
*,::after,::before {
    box-sizing: border-box
}

/*! normalize.css v3.0.1 | MIT License | git.io/normalize */
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0;
    background-color: #fafbfc;
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary {
    display: block
}

audio,canvas,progress,video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],template {
    display: none
}

a {
    background: 0 0
}

a:active,a:hover {
    outline: 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0
}

pre {
    overflow: auto
}

code,kbd,pre,samp {
    font-family: monospace,monospace;
    font-size: 1em
}

button,input,optgroup,select,textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button,select {
    text-transform: none
}

button,html input[type=button],input[type=reset],input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled],html input[disabled] {
    cursor: default
}

button::-moz-focus-inner,input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

input[type=checkbox],input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button {
    height: auto
}

input[type=search] {
    -webkit-appearance: textfield;
    box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: 700
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,th {
    padding: 0
}

.clear:after,.clear:before {
    content: "";
    display: table
}

.clear:after {
    clear: both
}

svg {
    max-height: 100%
}

img,svg {
    max-width: 100%
}

.contain_all {
    width: 100%;
    overflow: hidden
}

.outer_contain {
    max-width: 96.25em;
    margin: 0 auto
}

.contain {
    max-width: 75em;
    margin: 0 auto
}

.small_contain {
    max-width: 48em;
    margin: 0 auto
}

.cards_contain {
    max-width: 75em;
    padding: 0 .875em;
    margin: 0 auto
}

.btn,.callout_btn,.more_btn,.primary_btn {
    display: block;
    text-align: center;
    padding: 1rem .25rem;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.6rem;
    border-radius: .307692308em;
    background: #02b3e4;
    max-width: 20rem;
    width: 100%;
    border: none;
    transition: background .3s ease;
}

.btn:hover,.callout_btn:hover,.more_btn:hover,.primary_btn:hover {
    background: #028bb1;
    text-decoration: none;
    color: #fff
}

@media (min-width: 25em) {
    .btn,.callout_btn,.more_btn,.primary_btn {
        letter-spacing:1.25px
    }
}

.btn img,.callout_btn img,.more_btn img,.primary_btn img {
    height: 2em;
    left: 3em;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2em
}

.more_btn,.secondary_btn {
    background: #7d97ad
}

.more_btn:hover,.secondary_btn:hover {
    background: #607e97
}

.tooltip {
    position: relative;
    text-align: left;
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    background: url(/assets/images/svgs/icon_tooltip.svg) no-repeat center;
    background-size: cover;
    cursor: pointer;
    opacity: .6;
    transition: opacity .3s ease;
    z-index: 1000
}

.tooltip .tooltip_content {
    overflow: hidden;
    position: absolute;
    bottom: 100%;
    left: 50%;
    width: 17em;
    transform: translate(-8.5em,.25em);
    background: #fff;
    font-size: .875rem;
    line-height: 1.5em;
    letter-spacing: 0;
    text-transform: none;
    padding: 0;
    height: 0;
    margin-bottom: 1.75em;
    color: rgba(46,61,73,.65);
    font-weight: 400;
    opacity: 0;
    box-shadow: 0 .7em 1.5em 0 rgba(46,61,73,.2);
    transition: opacity .2s ease,transform .2s ease
}

.tooltip .tooltip_content::after {
    top: 100%;
    left: 50%;
    border: 1em solid transparent;
    border-top-color: #fff;
    content: "";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    transform: translate(-1em,0)
}

.tooltip.right .tooltip_content {
    transform: translate(-15em,.25em)
}

.tooltip.right .tooltip_content::after {
    left: auto;
    right: 0;
    transform: translate(-1em,0)
}

.tooltip.left .tooltip_content {
    transform: translate(-2em,.25em)
}

.tooltip.left .tooltip_content::after {
    left: 2em;
    transform: translate(-1em,0)
}

.tooltip:hover {
    opacity: 1
}

.tooltip.tooltip--on {
    opacity: 1
}

.tooltip.tooltip--on .tooltip_content {
    overflow: visible;
    padding: 1.25em;
    height: auto;
    opacity: 1;
    transform: translate(-50%,0)
}

.tooltip.tooltip--on.right .tooltip_content {
    transform: translate(-15em,0)
}

.tooltip.tooltip--on.left .tooltip_content {
    transform: translate(-2em,0)
}

input[type=email],input[type=password],input[type=search],input[type=tel],input[type=text] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: .875em;
    padding: .8em 1em .85em;
    border-radius: .142857143em;
    border: 1px solid #dbe2e8;
    outline: 0;
    color: #2e3d49;
    box-shadow: 0 .25em .5em 0 rgba(46,61,73,.12);
    transition: box-shadow .3s ease,border .3s ease
}

input[type=email]:hover,input[type=password]:hover,input[type=search]:hover,input[type=tel]:hover,input[type=text]:hover {
    box-shadow: 0 .125em .5em 0 rgba(46,61,73,.06)
}

input[type=email]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus {
    border-color: #91daee;
    box-shadow: 0 0 .75em .25em rgba(145,218,238,.35)
}

.sr-only {
    clip: rect(1px,1px,1px,1px);
    position: absolute!important;
    height: 1px;
    width: 1px;
    overflow: hidden
}

body,button,input,textarea {
    font-family: HanSans,"Open Sans","Hiragino Sans GB","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;
    -webkit-font-smoothing: antialiased
}

h1,h2,h3,h4,h5,h6 {
    font-family: HanSans,"Open Sans","Hiragino Sans GB","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;
    font-weight: 400;
    -webkit-font-smoothing: antialiased
}

blockquote,h1,h2,h3,h4,h5,h6,ol,p,ul {
    margin-top: 0
}

p {
    color: #525c65;
    line-height: 2em
}

p a {
    text-decoration: none;
    border-bottom: 1px solid #91daee;
    color: #525c65;
    transition: color .3s ease
}

p a:hover {
    color: #24292d
}

.breadcrumbs {
    margin-bottom: 2.25em
}

.breadcrumbs ul {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.breadcrumbs ul li {
    display: inline-block;
    margin: 0;
    font-size: .75em;
    font-weight: 600;
    color: #7d97ad;
    text-transform: uppercase
}

.breadcrumbs ul li::after {
    content: "›";
    margin: 0 .5em 0 .75em
}

.breadcrumbs ul li:last-child::after {
    display: none
}

.breadcrumbs ul li a {
    color: #7d97ad;
    text-decoration: none;
    transition: color .3s ease
}

.breadcrumbs ul li a:hover {
    color: #4c6478
}

.secondary_nav ul {
    list-style-type: none;
    margin: 0;
    padding: 1.5em 0 2.5em;
    text-align: center
}

.secondary_nav ul li {
    display: inline-block;
    margin: 0 1.25em
}

.secondary_nav ul li a {
    display: block;
    padding: .5em 0;
    font-size: .75em;
    color: #02b3e4;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .3s ease
}

.secondary_nav ul li a:hover {
    color: #028bb1
}

.card_scroller {
    overflow: hidden;
    margin-top: -9.375em
}

.card_scroller.success,.card_scroller.success_grid {
    margin-top: 0
}

.card_scroller .contain {
    padding: 0 1.5em 3.5em
}

.card_scroller .scroll_pane {
    overflow: visible!important;
    width: 100%;
    height: 22.5em;
    max-height: 22.5em;
    overflow: auto
}

.card_scroller.success_grid .scroll_pane {
    height: 45em;
    max-height: 45em
}

@media (min-width: 44em) {
    .card_scroller .contain {
        padding:0 1.5em 7.5em
    }
}

.search .search_contain {
    position: relative
}

.search input[type=search] {
    color: #2e3d49;
    border-radius: .125em;
    display: block;
    box-sizing: border-box;
    width: 100%;
    font-size: .9375em;
    padding: .75em 2.75em .75em 1em;
    border: 1px solid #dbe2e8;
    box-shadow: 0 .1em .125em 0 rgba(46,61,73,.08);
    outline: 0;
    transition: box-shadow .3s ease
}

.search input[type=search]:focus,.search input[type=search]:hover {
    box-shadow: 0 .07em .1125em 0 rgba(46,61,73,.06)
}

.search input[type=submit] {
    position: absolute;
    top: 50%;
    right: 1em;
    width: 1em;
    height: 1em;
    background: url(../images/icons/search.min.svg) no-repeat center;
    background-size: contain;
    text-indent: -9999em;
    border: none;
    transform: translateY(-50%)
}

.filter_controls {
    position: relative;
    top: -3.125em;
    background: #fff;
    border: 1px solid #dbe2e8;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
}

.filter_controls .filter_toggle {
    position: relative;
    display: block;
    padding-bottom: 1.5em;
    text-decoration: none;
    font-weight: 600;
    color: #697681;
    transition: color .3s ease
}

.filter_controls .filter_toggle .down_arrow {
    position: absolute;
    top: 0;
    right: 0;
    height: .92em;
    width: .5em
}

.filter_controls .filter_toggle .down_arrow img {
    opacity: .3;
    transition: transform .3s ease,opacity .3s ease
}

.filter_controls .filter_toggle .down_arrow::after {
    content: "+";
    position: absolute;
    top: -.125em;
    right: 0;
    font-size: 1.3125em;
    opacity: 0;
    color: #2e3d49;
    font-weight: 400;
    transition: opacity .3s ease,transform .3s ease
}

.filter_controls .filter_toggle:hover {
    color: #3b4249
}

.filter_controls .filter_toggle:hover .down_arrow img {
    opacity: .6
}

.filter_controls .filter--on .filter_toggle .down_arrow img {
    opacity: 0;
    transform: rotate(180deg)
}

.filter_controls .filter--on .filter_toggle .down_arrow::after {
    opacity: 1;
    transform: rotate(135deg)
}

.filter_controls .fields_contain {
    text-align: left;
    padding: 1.5em 1.25em;
    max-height: 4.25em;
    overflow: hidden;
    transition: max-height .3s ease
}

.filter_controls .fields_contain .fields {
    opacity: 0;
    transition: opacity .3s ease
}

.filter_controls .fields_contain .fields .field {
    position: relative;
    margin-bottom: 1em
}

.filter_controls .fields_contain .fields .field .number_selected {
    position: absolute;
    z-index: 1;
    top: -.75em;
    right: -.75em;
    font-size: .6875em;
    height: 1.5em;
    min-width: 1.5em;
    line-height: 1.5em;
    padding: 0 .5em;
    font-weight: 600;
    background: #91daee;
    color: #fff;
    text-align: center;
    border-radius: 1em
}

.filter_controls .fields_contain .fields .field:last-child {
    margin-bottom: 0
}

.filter_controls .fields_contain.filter--on {
    overflow: visible;
    max-height: 30em
}

.filter_controls .fields_contain.filter--on .fields {
    opacity: 1
}

.filter_controls .search {
    border-top: 1px solid #dbe2e8;
    height: 6em;
    padding: 1.5em 1.25em;
    background: #fafbfc
}

@media (min-width: 40em) {
    .filter_controls .filter_toggle {
        display:none
    }

    .filter_controls .fields_contain {
        max-height: 30em;
        overflow: visible
    }

    .filter_controls .fields_contain .fields {
        opacity: 1;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .filter_controls .fields_contain .fields .field.big {
        width: 48.25%;
        margin-right: 3.5%
    }

    .filter_controls .fields_contain .fields .field.big.last {
        margin-right: 0
    }

    .filter_controls .fields_contain .fields .field.small {
        width: 31%;
        margin-right: 3.5%;
        margin-bottom: 0
    }

    .filter_controls .fields_contain .fields .field.small.last {
        margin-right: 0
    }
}

@media (min-width: 54em) {
    .filter_controls .fields_contain .fields {
        -ms-flex-wrap:nowrap;
        flex-wrap: nowrap
    }

    .filter_controls .fields_contain .fields .field.big {
        width: 22%;
        margin-right: 1.25%;
        margin-bottom: 0
    }

    .filter_controls .fields_contain .fields .field.big.last {
        margin-right: 1.25%
    }

    .filter_controls .fields_contain .fields .field.small {
        width: 17%;
        margin-right: 1.25%
    }

    .filter_controls .fields_contain .fields .field.small.first {
        width: 21%
    }
}

@media (min-width: 70em) {
    .filter_controls .fields_contain {
        float:left;
        width: 78%
    }

    .filter_controls .search {
        float: right;
        width: 22%;
        border-left: 1px solid #dbe2e8;
        border-top: none
    }
}

.leads .outer_contain {
    background: #fafbfc
}

.leads .contain {
    padding: 3.5em 1.5em
}

.leads h2 {
    font-weight: 300;
    color: #2e3d49;
    font-size: 1.75em;
    text-align: center;
    margin-bottom: 1.5em
}

.leads .leads_list {
    list-style-type: none;
    margin: 0 auto;
    padding: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center
}

.leads .leads_list li {
    text-align: center;
    margin: 0;
    width: 14.375em;
    padding: 1.5em 1em 0
}

.leads .leads_list li img {
    width: 10em;
    margin-bottom: 1.5em;
    border-radius: 10em;
    box-shadow: 0 .125em .25em 0 rgba(46,61,73,.12)
}

.leads .leads_list li h3 {
    font-size: 1.125em;
    margin-bottom: .25em;
    font-weight: 600;
    color: #2e3d49
}

.leads .leads_list li h4 {
    font-size: 1em;
    font-weight: 400;
    margin-bottom: 0;
    color: #525c65
}

.leads .leads_list li h5 {
    font-size: .8125em;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 0;
    color: #7d97ad
}

@media (min-width: 35em) {
    .leads h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .leads .contain {
        padding:7.5em 1.5em
    }
}

.ui_kit header .logo {
    float: none;
    margin: 0 auto 2em
}

.ui_kit header p {
    display: block;
    text-align: center;
    font-size: .9375em;
    margin: 0;
    line-height: 2.333333333em
}

.ui_kit .ui_block {
    clear: both
}

.ui_kit .ui_block header {
    overflow: hidden
}

.ui_kit .ui_block header h2 {
    float: left;
    margin: 0 .75em 0 0;
    font-size: 1.75em;
    color: #2e3d49;
    font-weight: 300
}

.ui_kit .ui_block header h4 {
    float: left;
    font-size: .75em;
    text-transform: uppercase;
    color: #7d97ad;
    font-weight: 600;
    margin: 1.45em 0 0
}

.ui_kit .contain {
    overflow: hidden;
    padding: 1.5em 1.5em 3em
}

.ui_kit .contain.visible {
    overflow: visible
}

@media (min-width: 30em) {
    .ui_kit header .logo {
        float:left;
        margin: 0
    }

    .ui_kit header p {
        float: right
    }
}

@media (min-width: 44em) {
    .ui_kit .contain {
        padding:3.25em 1.5em 6.25em
    }
}

h4.details {
    font-size: .75em;
    font-weight: 400;
    line-height: 2em;
    color: #7d97ad;
    text-transform: uppercase;
    margin: 0
}

h4.details span.hex {
    display: block;
    font-size: 1.166666667em;
    font-weight: 300;
    color: #757c81;
    text-transform: none;
    margin-top: -.25em
}

.color_list {
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.color_list li {
    position: relative;
    float: left;
    width: 100%;
    padding: 2.5em 0 2.5em 5em
}

.color_list li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 4.125em;
    height: 4.125em;
    border-radius: 50%;
    transform: translateY(-50%)
}

.color_list li.udacity_blue::before {
    background: #02b3e4
}

.color_list li.dark_blue::before {
    background: #028bb1
}

.color_list li.light_blue::before {
    background: #91daee
}

.color_list li.midnight::before {
    background: #2e3d49
}

.color_list li.gray::before {
    background: #757c81
}

.color_list li.dark_cool_gray::before {
    background: #7d97ad
}

.color_list li.medium_cool_gray::before {
    background: #bcc9d4
}

.color_list li.cool_gray::before {
    background: #dbe2e8
}

.color_list li.light_gray::before {
    background: #fafbfc
}

.color_list li.white::before {
    border: 1px solid #e1e4e8;
    background: #fff
}

.color_list li.beige::before {
    background: #c4c4b9
}

.color_list li.medium_beige::before {
    background: #dfdfd1
}

.color_list li.sand::before {
    background: #eaeae0
}

.color_list li.light_sand::before {
    background: #f4f4ef
}

.color_list li.orange::before {
    background: #f95c3c
}

.color_list li.turquoise::before {
    background: #02ccba
}

.color_list li.yellow::before {
    background: #ecc81a
}

.color_list li.red::before {
    background: #f04546
}

.color_list li.green::before {
    background: #15c26b
}

.color_list li.dark_yellow::before {
    background: #ffae0c
}

@media (min-width: 30em) {
    .color_list li {
        width:47.5%;
        margin-right: 5%
    }

    .color_list li:nth-child(2n) {
        margin-right: 0
    }
}

@media (min-width: 45em) {
    .color_list li {
        width:30%;
        margin-right: 5%
    }

    .color_list li:nth-child(2n) {
        margin-right: 5%
    }

    .color_list li:nth-child(3n) {
        margin-right: 0
    }
}

@media (min-width: 60em) {
    .color_list li {
        width:22%;
        margin-right: 4%
    }

    .color_list li:nth-child(2n),.color_list li:nth-child(3n) {
        margin-right: 4%
    }

    .color_list li:nth-child(4n) {
        margin-right: 0
    }
}

@media (min-width: 73em) {
    .color_list li {
        width:18%;
        margin-right: 2.5%
    }

    .color_list li:nth-child(2n),.color_list li:nth-child(3n),.color_list li:nth-child(4n) {
        margin-right: 2.5%
    }

    .color_list li:nth-child(5n) {
        margin-right: 0
    }
}

.typography_list {
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.typography_list:first-of-type {
    margin-top: 2em
}

.typography_list li {
    display: block
}

.typography_list li .blockquote,.typography_list li .button,.typography_list li .li,.typography_list li .p_small,.typography_list li h1,.typography_list li h2,.typography_list li h3,.typography_list li h4,.typography_list li h5 {
    color: #2e3d49;
    margin: 0
}

.typography_list li h1,.typography_list li h2,.typography_list li h3 {
    font-size: 2.5em;
    font-weight: 300;
    letter-spacing: -.01em
}

.typography_list li h2 {
    font-size: 2.125em
}

.typography_list li h3 {
    font-size: 1.75em
}

.typography_list li h4,.typography_list li h5 {
    font-size: 1.375em;
    font-weight: 600;
    letter-spacing: -.01em
}

.typography_list li h4.details,.typography_list li h5.details {
    font-size: .75em;
    font-weight: 400;
    line-height: 2em;
    color: #7d97ad;
    text-transform: uppercase;
    margin: .5em 0 3em;
    padding-left: 1.25em
}

.typography_list li h4.details span.hex,.typography_list li h5.details span.hex {
    display: block;
    font-size: 1.166666667em;
    font-weight: 300;
    color: #757c81;
    text-transform: none;
    margin-top: -.25em
}

.typography_list li h5 {
    font-size: 1.125em
}

.typography_list li h6,.typography_list li p,.typography_list li span {
    color: #757c81;
    margin: 0
}

.typography_list li h6 {
    font-size: 1.125em;
    font-weight: 400;
    letter-spacing: .01em
}

.typography_list li p {
    font-weight: 400;
    letter-spacing: .01em
}

.typography_list li p.p_large {
    font-size: 1.125em;
    letter-spacing: 0
}

.typography_list li p.p_small {
    font-size: .875em;
    letter-spacing: 0
}

.typography_list li span {
    font-size: .875em
}

.typography_list li span.nav {
    font-size: .938em
}

.typography_list li span.button {
    font-size: .75em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .01em
}

.typography_list li span.blockquote {
    font-size: 1.5em;
    font-weight: 300;
    font-style: italic
}

@media (min-width: 67em) {
    .typography_list {
        float:left
    }

    .typography_list.right {
        position: relative;
        top: -2.875em;
        float: right
    }
}

.icon_block {
    margin-top: 3.5em
}

.icon_block.row {
    clear: left
}

.icon_block .icons {
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    padding: 1em 0 0
}

.icon_block .icons li {
    vertical-align: bottom;
    float: left;
    margin: 0 2em 1em 0
}

.icon_block .icons li:last-child {
    margin-right: 0
}

.icon_block .icons.pictograph li {
    margin-right: 2.5em;
    width: 2.8125em
}

.icon_block .icons.input li {
    width: 1.25em
}

.icon_block .icons.social li {
    width: 2em;
    opacity: .5
}

.icon_block .icons.misc li {
    margin-right: 1.5em;
    width: 1.875em
}

.icon_block .icons.misc li.larger {
    position: relative;
    width: 4.6875em;
    top: -.5em
}

@media (min-width: 60em) {
    .icon_block {
        float:left
    }

    .icon_block .icons {
        margin: 1em 8.125em 0 0
    }

    .icon_block .icons.misc {
        margin-right: 0
    }
}

.inputs_block {
    margin-top: 3.5em
}

.inputs_block h4.details {
    margin-bottom: 2em
}

.inputs_block .input_contain {
    position: relative;
    clear: both;
    display: block;
    width: 100%;
    margin: 0 0 1.5em 0
}

.inputs_block .input_contain input {
    width: 100%;
    margin: 0;
    text-overflow: ellipsis
}

.inputs_block .input_contain.invalid input,.inputs_block .input_contain.valid input {
    padding-right: 2em
}

.inputs_block .input_contain.invalid input {
    border-color: #f04546
}

.inputs_block .dual_input_contain {
    float: left;
    width: 100%;
    border-radius: .125em;
    margin-bottom: 1.3125em;
    border: 1px solid #dbe2e8;
    outline: 0;
    box-shadow: 0 .125em .5em 0 rgba(46,61,73,.06);
    transition: box-shadow .3s ease,border .3s ease
}

.inputs_block .dual_input_contain:hover {
    box-shadow: 0 .25em .5em 0 rgba(46,61,73,.12)
}

.inputs_block .dual_input_contain:focus {
    box-shadow: none
}

.inputs_block .dual_input_contain .input_contain {
    clear: none;
    float: left;
    width: 50%;
    margin: 0;
    border: 0;
    box-shadow: none;
    border-radius: 0
}

.inputs_block .dual_input_contain .input_contain:first-child {
    border-right: 1px solid #dbe2e8
}

.inputs_block .dual_input_contain input {
    border: 0;
    padding: .8em 1em .85em;
    box-shadow: none;
    border-radius: 0
}

.inputs_block .invalid::before,.inputs_block .valid::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: .5em;
    width: 1em;
    height: 1em;
    background: url(svgs/icon_valid.svg) no-repeat center;
    background-size: contain;
    transform: translateY(-50%)
}

.inputs_block .invalid::before {
    background-image: url(svgs/icon_invalid.svg)
}

.inputs_block .checkbox,.inputs_block .radio {
    width: 50%;
    float: left
}

@media (min-width: 40em) {
    .inputs_block.half {
        float:left;
        width: 47.75%;
        margin-right: 3.5%
    }

    .inputs_block.half.last {
        margin-right: 0
    }
}

@media (min-width: 50em) {
    .inputs_block .input_contain.third {
        float:left;
        clear: none;
        width: 31%;
        margin-right: 3.5%
    }

    .inputs_block .input_contain.third.last {
        margin-right: 0
    }
}

.button_block {
    margin-top: 3.5em
}

.button_block h4.details {
    margin-bottom: 2em
}

.button_block .callout_btn,.button_block .more_btn {
    margin-bottom: 1em
}

.button_block .callout_btn.last,.button_block .more_btn.last {
    margin-bottom: 0
}

.button_block .tooltip {
    float: left
}

.button_block .arrow_btn {
    float: left;
    display: inline-block;
    width: 2em;
    height: 2em;
    margin: 0 1.25em 0 1em;
    opacity: .8;
    transition: opacity .3s ease
}

.button_block .arrow_btn:hover {
    opacity: 1
}

.button_block .play_icon {
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12);
    float: left;
    width: 3em;
    height: 3em;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
    z-index: 1;
    display: inline-block
}

.button_block .play_icon::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    left: 60%;
    bottom: 18%;
    width: 60%;
    height: 60%;
    background: #02b3e4;
    transform: translateX(-50%) rotate(32deg);
    transition: height .5s ease-in-out
}

.button_block .category_btn {
    position: relative;
    display: block;
    color: #2e3d49;
    text-decoration: none;
    width: 100%;
    height: 4.357142857em;
    margin-bottom: 1.5em;
    font-size: .875em;
    text-align: center;
    background: #fff;
    border: 1px solid #dbe2e8;
    border-radius: .142857143em;
    box-shadow: 0 .1em .125em 0 rgba(46,61,73,.08);
    transition: box-shadow .3s ease,color .3s ease,border .3s ease
}

.button_block .category_btn span {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    padding: 0 .5em;
    transform: translateY(-50%)
}

.button_block .category_btn.hover,.button_block .category_btn:hover {
    color: #07090a;
    box-shadow: 0 .2em 1.115em 0 rgba(46,61,73,.1);
    border: 1px solid #bcc9d4
}

.button_block .toggle label {
    clear: none;
    margin-right: 1em;
    float: left
}

@media (min-width: 40em) {
    .button_block.third {
        float:left;
        width: 31%;
        margin-right: 3.5%
    }

    .button_block.third.last {
        margin-right: 0
    }
}

.modal_block {
    margin-top: 3.5em
}

.modal_block h4.details {
    margin-bottom: 2em
}

.image_overlay_block {
    margin-top: 3.5em;
    overflow: hidden
}

.image_overlay_block .image_contain {
    position: relative;
    max-width: 48.75em;
    margin-right: 1.875em;
    margin-bottom: 3.875em
}

.image_overlay_block .image_contain::after {
    content: "";
    position: absolute;
    top: 1.875em;
    left: 1.875em;
    width: 100%;
    height: 100%;
    background: rgba(46,61,73,.4)
}

.image_overlay_block h4.details {
    float: left
}

@media (min-width: 55em) {
    .image_overlay_block .image_contain {
        float:left;
        margin-right: 6.25em
    }
}

.component_block {
    clear: left;
    margin-top: 3.5em
}

.component_block h4.details {
    margin-bottom: 2em
}

.component_block .student_card {
    display: block;
    max-width: 30em;
    margin: 0 auto 1em;
    background: #fff;
    border: 1px solid #dbe2e8;
    box-shadow: 0 .25em .5em 0 rgba(46,61,73,.12);
    position: relative;
    padding: 1.5em 1.5em 1.5em 7.75em
}

.component_block .student_card img {
    position: absolute;
    top: 50%;
    left: 1.5em;
    transform: translateY(-50%);
    width: 5em;
    height: 5em;
    border-radius: 50%
}

.component_block .student_card h3 {
    font-size: 1.125em;
    color: #2e3d49;
    font-weight: 600;
    margin-bottom: .25em
}

.component_block .student_card h5 {
    font-size: .75em;
    margin-bottom: .75em;
    text-transform: uppercase;
    color: #7d97ad;
    font-weight: 400
}

.component_block .student_card h4 {
    font-size: .875em;
    margin-bottom: 0;
    color: #757c81;
    font-weight: 400
}

.component_block .tabs_contain {
    max-width: 63.75em
}

.component_block .scroll_pane.jspScrollable {
    overflow: visible!important
}

.component_block .search .search_contain {
    position: relative
}

.component_block .search input[type=search] {
    color: #2e3d49;
    border-radius: .125em;
    display: block;
    box-sizing: border-box;
    width: 100%;
    font-size: .9375em;
    padding: .75em 2.75em .75em 1em;
    border: 1px solid #dbe2e8;
    box-shadow: 0 .1em .125em 0 rgba(46,61,73,.08);
    outline: 0;
    transition: box-shadow .3s ease
}

.component_block .search input[type=search]:focus,.component_block .search input[type=search]:hover {
    box-shadow: 0 .07em .1125em 0 rgba(46,61,73,.06)
}

.component_block .search input[type=submit] {
    position: absolute;
    top: 50%;
    right: 1em;
    width: 1em;
    height: 1em;
    background: url(../images/icons/search.min.svg) no-repeat center;
    background-size: contain;
    text-indent: -9999em;
    border: none;
    transform: translateY(-50%)
}

.component_block .filter_controls {
    position: relative;
    background: #fff;
    border: 1px solid #dbe2e8;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
}

.component_block .filter_controls .filter_toggle {
    position: relative;
    display: block;
    padding-bottom: 1.5em;
    text-decoration: none;
    font-weight: 600;
    color: #697681;
    transition: color .3s ease
}

.component_block .filter_controls .filter_toggle .down_arrow {
    position: absolute;
    top: 0;
    right: 0;
    height: .92em;
    width: .5em
}

.component_block .filter_controls .filter_toggle .down_arrow img {
    opacity: .3;
    transition: transform .3s ease,opacity .3s ease
}

.component_block .filter_controls .filter_toggle .down_arrow::after {
    content: "+";
    position: absolute;
    top: -.125em;
    right: 0;
    font-size: 1.3125em;
    opacity: 0;
    color: #2e3d49;
    font-weight: 400;
    transition: opacity .3s ease,transform .3s ease
}

.component_block .filter_controls .filter_toggle:hover {
    color: #3b4249
}

.component_block .filter_controls .filter_toggle:hover .down_arrow img {
    opacity: .6
}

.component_block .filter_controls .filter--on .filter_toggle .down_arrow img {
    opacity: 0;
    transform: rotate(180deg)
}

.component_block .filter_controls .filter--on .filter_toggle .down_arrow::after {
    opacity: 1;
    transform: rotate(135deg)
}

.component_block .filter_controls .fields_contain {
    text-align: left;
    padding: 1.5em 1.25em;
    max-height: 4.25em;
    overflow: hidden;
    transition: max-height .3s ease
}

.component_block .filter_controls .fields_contain .fields {
    opacity: 0;
    transition: opacity .3s ease
}

.component_block .filter_controls .fields_contain .fields .field {
    position: relative;
    margin-bottom: 1em
}

.component_block .filter_controls .fields_contain .fields .field .number_selected {
    position: absolute;
    z-index: 1;
    top: -.75em;
    right: -.75em;
    font-size: .6875em;
    height: 1.5em;
    min-width: 1.5em;
    line-height: 1.5em;
    padding: 0 .5em;
    font-weight: 600;
    background: #91daee;
    color: #fff;
    text-align: center;
    border-radius: 1em
}

.component_block .filter_controls .fields_contain .fields .field:last-child {
    margin-bottom: 0
}

.component_block .filter_controls .fields_contain.filter--on {
    overflow: visible;
    max-height: 30em
}

.component_block .filter_controls .fields_contain.filter--on .fields {
    opacity: 1
}

.component_block .filter_controls .search {
    border-top: 1px solid #dbe2e8;
    height: 6em;
    padding: 1.5em 1.25em;
    background: #fafbfc
}

@media (min-width: 40em) {
    .component_block .filter_controls .filter_toggle {
        display:none
    }

    .component_block .filter_controls .fields_contain {
        max-height: 30em;
        overflow: visible
    }

    .component_block .filter_controls .fields_contain .fields {
        opacity: 1;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .component_block .filter_controls .fields_contain .fields .field.big {
        width: 48.25%;
        margin-right: 3.5%
    }

    .component_block .filter_controls .fields_contain .fields .field.big.last {
        margin-right: 0
    }

    .component_block .filter_controls .fields_contain .fields .field.small {
        width: 31%;
        margin-right: 3.5%;
        margin-bottom: 0
    }

    .component_block .filter_controls .fields_contain .fields .field.small.last {
        margin-right: 0
    }
}

@media (min-width: 54em) {
    .component_block .filter_controls .fields_contain .fields {
        -ms-flex-wrap:nowrap;
        flex-wrap: nowrap
    }

    .component_block .filter_controls .fields_contain .fields .field.big {
        width: 22%;
        margin-right: 1.25%;
        margin-bottom: 0
    }

    .component_block .filter_controls .fields_contain .fields .field.big.last {
        margin-right: 1.25%
    }

    .component_block .filter_controls .fields_contain .fields .field.small {
        width: 17%;
        margin-right: 1.25%
    }

    .component_block .filter_controls .fields_contain .fields .field.small.first {
        width: 21%
    }
}

@media (min-width: 70em) {
    .component_block .filter_controls .fields_contain {
        float:left;
        width: 78%
    }

    .component_block .filter_controls .search {
        float: right;
        width: 22%;
        border-left: 1px solid #dbe2e8;
        border-top: none
    }
}

@media (min-width: 40em) {
    .component_block.third {
        clear:none;
        float: left;
        width: 47.5%;
        margin-right: 5%
    }

    .component_block.third:nth-of-type(2n) {
        margin-right: 0
    }

    .component_block.third:nth-of-type(2n+1) {
        clear: left
    }
}

@media (min-width: 65em) {
    .component_block.third {
        clear:none;
        float: left;
        width: 31%;
        margin-right: 3.5%
    }

    .component_block.third:nth-of-type(2n) {
        margin-right: 3.5%
    }

    .component_block.third:nth-of-type(2n+1) {
        clear: none
    }

    .component_block.third:nth-of-type(3n) {
        margin-right: 0
    }

    .component_block.third:nth-of-type(3n+1) {
        clear: left
    }
}

.misc_block {
    margin-top: 3.5em
}

.misc_block h4.details {
    margin-bottom: 2em
}

.misc_block.tooltips h4.details {
    margin-bottom: 4em
}

.misc_block .pagination_example {
    text-align: left;
    list-style-type: none;
    display: block;
    margin: 0;
    padding: 0
}

.misc_block .pagination_example li {
    cursor: pointer;
    display: inline-block;
    margin: 0 .5em 0 0
}

.misc_block .pagination_example li a {
    cursor: pointer;
    display: block;
    text-indent: -999em;
    width: .875em;
    height: .875em;
    border-radius: 50%;
    background: #dbe2e8;
    transition: background .3s ease
}

.misc_block .pagination_example li a.active {
    background: #7d97ad
}

.misc_block .filters {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.misc_block .filters li {
    cursor: pointer;
    position: relative;
    display: inline-block;
    padding: .5em 2em .5em .75em;
    background: rgba(145,218,238,.3);
    color: #7d97ad;
    font-size: .75em;
    text-transform: uppercase;
    border-radius: .166666667em;
    margin-right: .75em
}

.misc_block .filters li .clear {
    position: absolute;
    top: 50%;
    right: .75em;
    width: .75em;
    height: .75em;
    opacity: .5;
    line-height: 0;
    transform: translateY(-50%);
    transition: opacity .3s ease
}

.misc_block .filters li:hover .clear {
    opacity: .8
}

.misc_block .tooltips_example .tooltip_up {
    float: left;
    position: relative;
    width: 47.5%;
    margin-right: 5%
}

.misc_block .tooltips_example .tooltip_up .tip {
    display: block;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    background: #fff;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12);
    border: 1px solid #dbe2e8;
    text-align: left;
    opacity: 1;
    height: 4em
}

.misc_block .tooltips_example .tooltip_up .tip::before {
    top: -1em;
    left: 50%;
    content: "";
    height: 1.0625em;
    width: 2em;
    position: absolute;
    background: url(../images/icons/nav_arrow.min.svg) no-repeat center;
    background-size: contain;
    transform: translate(-50%,0)
}

.misc_block .tooltips_example .tooltip_down {
    float: left;
    position: relative;
    top: -1em;
    display: block;
    width: 47.5%;
    background: #fff;
    height: 4em;
    color: rgba(46,61,73,.65);
    font-weight: 400;
    opacity: 1;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
}

.misc_block .tooltips_example .tooltip_down::after {
    top: 100%;
    left: 50%;
    border: 1em solid transparent;
    border-top-color: #fff;
    content: "";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    transform: translate(-1em,0)
}

.misc_block .timeline {
    position: relative;
    list-style-type: none;
    margin: 0;
    padding: .625em 0 0;
    border-bottom: 2px solid #91daee
}

.misc_block .timeline li {
    display: block;
    width: 1.25em;
    height: 1.25em;
    position: absolute;
    border: 2px solid #91daee;
    background: #fff;
    top: 0;
    left: 0;
    border-radius: 50%;
    text-indent: -999em
}

.misc_block .timeline li:nth-child(2) {
    left: 33%;
    transform: translateX(-50%)
}

.misc_block .timeline li:nth-child(3) {
    left: 66%;
    transform: translateX(-50%)
}

.misc_block .timeline li:nth-child(4) {
    left: auto;
    right: 0
}

.misc_block .avatars {
    list-style-type: none;
    position: relative;
    margin: 0;
    padding: 0;
    height: 10em
}

.misc_block .avatars li {
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0;
    border-radius: 50%;
    box-shadow: 0 .2em 1.115em 0 rgba(46,61,73,.1)
}

.misc_block .avatars li img {
    float: left
}

.misc_block .avatars li.big {
    width: 10em;
    height: 10em
}

.misc_block .avatars li.mid {
    width: 5em;
    height: 5em;
    left: 11em;
    top: 4.75em
}

.misc_block .avatars li.small {
    width: 3.75em;
    height: 3.75em;
    left: 11em
}

.misc_block .badges {
    list-style-type: none;
    position: relative;
    margin: 0;
    padding: 0
}

.misc_block .badges li {
    background: #02ccba;
    font-size: .6875em;
    font-weight: 600;
    letter-spacing: 2px;
    color: #fff;
    text-align: center;
    text-transform: uppercase
}

.misc_block .badges li.circle {
    float: left;
    margin-right: 1.454545455em;
    width: 6em;
    height: 6em;
    border-radius: 50%;
    line-height: 6em
}

.misc_block .badges li.vertical {
    float: left;
    display: inline-block;
    line-height: 2em;
    padding: 0 .75em;
    transform: rotate(-90deg) translateX(-35%)
}

.misc_block .messages {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.misc_block .messages li {
    display: block;
    position: relative;
    margin-bottom: 1.9em;
    padding: 1em 1.5em;
    background: #91daee
}

.misc_block .messages li .close_banner {
    display: block;
    line-height: 0;
    position: absolute;
    top: 1.25em;
    right: 1em;
    width: .875em;
    height: .875em;
    opacity: .7;
    transition: opacity .3s ease
}

.misc_block .messages li .close_banner:hover {
    opacity: 1
}

.misc_block .messages li span {
    font-size: .875em;
    color: #fff
}

.misc_block .messages li:last-child {
    margin-bottom: 0
}

.misc_block .messages li.success {
    background: #15c26b
}

.misc_block .messages li.warning {
    background: #ecc81a
}

.misc_block .messages li.critical {
    background: #f04546
}

.misc_block.h_tabs_example .tab_list {
    list-style-type: none;
    margin: 0;
    padding: 0 0 1em;
    border-bottom: 1px solid #dbe2e8
}

.misc_block.h_tabs_example .tab_list li {
    display: block
}

.misc_block.h_tabs_example .tab_list li a {
    display: block;
    font-size: .9375em;
    text-decoration: none;
    padding: .5em 0;
    color: #757c81;
    transition: color .3s ease
}

.misc_block.h_tabs_example .tab_list li a:hover {
    color: #5d6266
}

.misc_block.h_tabs_example .tab_list li.active a {
    color: #02b3e4
}

.misc_block .scroll_contain {
    position: relative;
    display: block;
    width: 100%;
    max-width: 25em;
    height: .8125em;
    border-radius: 1em;
    background: rgba(46,61,73,.1)
}

.misc_block .scroll_contain .scroller {
    display: block;
    background: #7d97ad;
    position: relative;
    top: 0;
    left: 0;
    height: 100%;
    width: 40%;
    border-radius: 1em;
    cursor: pointer
}

.misc_block .progress_contain {
    position: relative;
    display: block;
    width: 100%;
    max-width: 25em;
    height: 3.75em;
    background: #dbe2e8
}

.misc_block .progress_contain .progress {
    display: block;
    background: #02ccba;
    position: relative;
    top: 0;
    left: 0;
    height: 100%;
    width: 60%
}

.misc_block.v_tabs_example .tab_list {
    list-style-type: none;
    margin: 0;
    padding: 0;
    max-width: 25em
}

.misc_block.v_tabs_example .tab_list li {
    display: block
}

.misc_block.v_tabs_example .tab_list li a {
    display: block;
    padding: 1em;
    font-size: .9375em;
    color: #7d97ad;
    text-decoration: none;
    transition: background .3s ease
}

.misc_block.v_tabs_example .tab_list li:hover a {
    background: rgba(219,226,232,.3)
}

.misc_block.v_tabs_example .tab_list li.active a,.misc_block.v_tabs_example .tab_list li.active:hover a {
    background: #dbe2e8
}

@media (min-width: 24em) {
    .misc_block.pagination {
        clear:left;
        float: left;
        width: 47.5%;
        margin-right: 5%
    }

    .misc_block.filters {
        float: left;
        width: 47.5%
    }
}

@media (min-width: 30em) {
    .misc_block.scroll_bar_example,.misc_block.tooltips {
        clear:left;
        float: left;
        width: 47.5%;
        margin-right: 5%
    }

    .misc_block.progress_bar_example,.misc_block.timeline_example {
        float: left;
        width: 47.5%
    }
}

@media (min-width: 35em) {
    .misc_block.avatars_example {
        clear:left;
        float: left;
        width: 57.5%;
        margin-right: 5%
    }

    .misc_block.badges_example {
        float: left;
        width: 37.5%
    }

    .misc_block.banner_example {
        clear: left
    }

    .misc_block.h_tabs_example .tab_list {
        padding: 0
    }

    .misc_block.h_tabs_example .tab_list li {
        display: inline-block;
        margin-right: 2.5em
    }

    .misc_block.h_tabs_example .tab_list li a {
        position: relative;
        padding: 0 0 3em
    }

    .misc_block.h_tabs_example .tab_list li.active a {
        color: #5d6266
    }

    .misc_block.h_tabs_example .tab_list li.active a::after {
        content: "";
        width: 100%;
        height: .333333333em;
        background: #02b3e4;
        position: absolute;
        bottom: 0;
        left: 0
    }
}

@media (min-width: 50em) {
    .misc_block.pagination {
        width:18%
    }

    .misc_block.filters {
        width: 15%;
        margin-right: 5%
    }

    .misc_block.tooltips {
        clear: none;
        width: 25%
    }

    .misc_block.timeline_example {
        float: left;
        width: 27%
    }
}

@media (min-width: 58.75em) {
    .misc_block.avatars_example {
        width:55%;
        margin-right: 10%
    }

    .misc_block.badges_example {
        float: left;
        width: 35%
    }

    .misc_block.scroll_bar_example {
        width: 45%;
        margin-right: 10%
    }

    .misc_block.progress_bar_example {
        width: 45%
    }
}

@media (min-width: 58.75em) {
    .misc_left_contain {
        float:left;
        width: 47.5%;
        margin-right: 5%
    }
}

@media (min-width: 58.75em) {
    .misc_right_contain {
        float:left;
        width: 47.5%
    }
}

@media (min-width: 58.75em) {
    .misc_left_big_contain {
        float:left;
        width: 60%;
        margin-right: 5%
    }
}

@media (min-width: 58.75em) {
    .misc_right_small_contain {
        float:left;
        width: 35%
    }
}

.top_banner {
    display: none;
    position: relative;
    background: #7d97ad;
    padding: .5em 1.5em;
    text-align: center
}

.top_banner p {
    position: relative;
    color: #fff;
    font-size: .875em;
    margin: 0;
    line-height: 1.5em
}

.top_banner p a {
    color: #fff
}

.top_banner p .featured {
    position: relative;
    display: block;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 2px;
    font-size: .857142857em;
    line-height: 1.5em
}

.top_banner p .featured::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 3em;
    border-bottom: 1px solid #91daee;
    transform: translateX(-50%)
}

.top_banner .close_banner {
    display: block;
    line-height: 0;
    position: absolute;
    top: .75em;
    right: 1em;
    width: .875em;
    height: .875em;
    opacity: .7;
    transition: opacity .3s ease
}

.top_banner .close_banner:hover {
    opacity: 1
}

@media (min-width: 30em) {
    .top_banner {
        padding:.5em 2.5em
    }
}

@media (min-width: 30em) {
    .top_banner p {
        line-height:2em
    }

    .top_banner p .featured {
        display: inline;
        border-bottom: none;
        border-right: 1px solid #91daee;
        padding-right: 1.5em;
        margin-right: 1.5em;
        line-height: 2.333333333em
    }

    .top_banner p .featured::after {
        display: none
    }

    .top_banner .close_banner {
        top: 50%;
        transform: translateY(-50%)
    }
}

.page-classic .top_banner,.page-homepage .top_banner {
    display: block
}

.global .contain {
    position: relative;
    z-index: 9999;
    padding: 1.5em
}

@media (min-width: 45em) {
    .global .contain {
        padding:2em 1.5em 2em
    }
}

@media (min-width: 60em) {
    .global .contain {
        padding:2.375em 1.5em
    }
}

.logo {
    float: left;
    width: 220px
}

.sign_in_link {
    float: right;
    font-size: .9375em;
    color: #02b3e4;
    text-decoration: none;
    line-height: 1.333333333em;
    transition: color .3s ease;
    margin-left: 1.25em
}

.sign_in_link:hover {
    color: #028bb1
}

@media (min-width: 30em) {
    .sign_in_link {
        line-height:2.6em
    }
}

@media (min-width: 60em) {
    .sign_in_link {
        margin-left:2.6em
    }
}

.header-menu-wrapper {
    padding-top: 20px
}

nav.main {
    position: fixed;
    overflow: hidden;
    z-index: 1000;
    bottom: 1em;
    right: 1em;
    width: 3.5em;
    height: 3.5em;
    padding: 0;
    background: rgba(2,179,228,.9);
    transition: width .15s ease,height .2s ease,padding .15s ease
}

nav.main .nav_toggle {
    position: absolute;
    display: block;
    bottom: 1em;
    right: 1em;
    line-height: 0;
    width: 1.5em;
    height: 1.5em;
    cursor: pointer;
    transition: transform .25s ease
}

nav.main .nav_toggle .bar {
    display: block;
    width: 100%;
    height: 11%;
    margin-top: 22%;
    background: #fff;
    transition: opacity .25s ease,transform .25s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

nav.main .nav_toggle .bar.bar_top {
    margin-top: 13%
}

nav.main ul.main_nav {
    position: absolute;
    bottom: 3.75em;
    right: 0;
    list-style-type: none;
    margin: 0;
    padding: 0;
    opacity: 0;
    width: 18em;
    transition: opacity .15s .1s ease,bottom .15s .1s ease
}

nav.main ul.main_nav li {
    font-size: 1.45em;
    font-weight: 300;
    text-align: center;
    line-height: 2.6em
}

nav.main ul.main_nav li a {
    color: rgba(255,255,255,.8);
    text-decoration: none;
    line-height: 2em;
    transition: color .3s ease
}

nav.main ul.main_nav li a:hover {
    color: #fff
}

nav.main ul.main_nav li .subnav {
    display: none
}

@media (min-width: 44em) {
    nav.main ul.main_nav li.home_link {
        display:none
    }
}

.for_business_page nav.main .for_business_link a {
    color: #fff
}

.get_hired_page nav.main .get_hired_link a {
    color: #fff
}

.page-ndop nav.main .nanodegree_link a {
    color: #fff
}

.free_courses_page nav.main .free_courses_link a {
    color: #fff
}

nav.main.nav--on {
    width: 18em;
    height: 17em;
    padding: 2em 1em 4em
}

nav.main.nav--on .nav_toggle {
    transform: rotate(180deg)
}

nav.main.nav--on .nav_toggle .bar_top {
    transform: translateY(.5em) rotate(135deg)
}

nav.main.nav--on .nav_toggle .bar_mid {
    opacity: 0
}

nav.main.nav--on .nav_toggle .bar_bottom {
    transform: translateY(-.5em) rotate(-135deg)
}

nav.main.nav--on ul.main_nav {
    opacity: 1;
    bottom: 4.25em
}

@media (min-width: 52em) {
    nav.main {
        position:static;
        overflow: visible;
        background: 0 0;
        bottom: auto;
        right: auto;
        width: auto;
        height: auto;
        padding: 0;
        transition: none;
        float: right
    }

    nav.main .nav_toggle {
        display: none
    }

    nav.main ul.main_nav {
        position: static;
        bottom: auto;
        right: auto;
        opacity: 1;
        width: 100%
    }

    nav.main ul.main_nav li {
        position: relative;
        display: inline-block;
        margin-left: 1.25em;
        text-align: center;
        font-size: .9375em;
        font-weight: 400
    }

    nav.main ul.main_nav li:first-child {
        margin-left: 0
    }

    nav.main ul.main_nav li a {
        color: #697681;
        text-decoration: none;
        line-height: 1.6em;
        transition: color .3s ease
    }

    nav.main ul.main_nav li a:hover {
        color: #3b4249
    }

    nav.main ul.main_nav li .subnav_contain {
        position: absolute;
        padding-top: 2em;
        top: 100%;
        left: 50%;
        width: 100%;
        transform: translate(-50%,-.5em)
    }

    nav.main ul.main_nav li .subnav {
        display: block;
        overflow: hidden;
        position: absolute;
        top: 100%;
        left: 50%;
        transform: translate(-50%,-.5em);
        list-style-type: none;
        margin: 0;
        padding: 0;
        background: #fff;
        box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12);
        border: 1px solid #dbe2e8;
        text-align: left;
        opacity: 0;
        max-height: 0;
        transition: max-height .3s ease,opacity .3s ease,transform .3s ease
    }

    nav.main ul.main_nav li .subnav::before {
        top: -1em;
        left: 50%;
        content: "";
        height: 1.0625em;
        width: 2em;
        position: absolute;
        background: url(../images/icons/nav_arrow.min.svg) no-repeat center;
        background-size: contain;
        transform: translate(-50%,0)
    }

    nav.main ul.main_nav li .subnav li {
        margin-left: 0
    }

    nav.main ul.main_nav li .subnav li a {
        display: block;
        font-size: .85em;
        white-space: nowrap;
        color: #02b3e4;
        text-decoration: none;
        text-transform: uppercase;
        padding: .75em 2em;
        transition: color .3s ease
    }

    nav.main ul.main_nav li .subnav li a:hover {
        color: #028bb1
    }

    nav.main ul.main_nav li .subnav li:first-child a {
        padding-top: 2em
    }

    nav.main ul.main_nav li .subnav li:last-child a {
        padding-bottom: 2em
    }

    nav.main ul.main_nav li:hover .subnav {
        overflow: visible;
        opacity: 1;
        max-height: 20em;
        transform: translate(-50%,0)
    }

    .for_business_page nav.main .for_business_link a {
        color: #24292d
    }

    .get_hired_page nav.main .get_hired_link a {
        color: #24292d
    }

    .page-ndop nav.main .nanodegree_link a {
        color: #24292d
    }

    .free_courses_page nav.main .free_courses_link a {
        color: #24292d
    }

    nav.main.nav--on {
        width: auto;
        height: auto;
        padding: 1.5em 0 0
    }

    nav.main.nav--on ul.main_nav {
        bottom: auto
    }
}

@media (min-width: 60em) {
    nav.main {
        clear:none;
        display: block;
        padding-top: 0
    }

    nav.main ul.main_nav li {
        margin: 6px 1em
    }

    nav.main ul.main_nav li::before {
        content: "";
        display: none;
        position: absolute;
        top: -38px;
        left: 0;
        width: 100%;
        height: .333333333em;
        background: #02b3e4
    }

    .for_business_page nav.main .for_business_link::before {
        display: block
    }

    .get_hired_page nav.main .get_hired_link::before {
        display: block
    }

    .free_courses_page nav.main .free_courses_link::before {
        display: block
    }

    nav.main.nav--on {
        padding-top: 0
    }
}

#bubble-container {
    position: relative;
    display: none
}

#bubble-container.display {
    display: inline-block
}

#bubble-container .bubble {
    position: absolute;
    text-align: center;
    width: 110%;
    bottom: 40px;
    color: #fff;
    background-color: #f95c3c;
    border-radius: 5px;
    line-height: 1.8
}

#bubble-container .bubble:before {
    bottom: -16px;
    right: 5%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none
}

#bubble-container .bubble:before {
    border-top-color: #f95c3c;
    border-width: 10px
}

#bubble-container .bubble span {
    padding: 2px;
    font-size: 80%;
    font-weight: 700
}

footer {
    background: #f4f4ef
}

footer .contain {
    position: relative;
    overflow: hidden;
    padding: 3.25em 1.5em 6.25em
}

@media (min-width: 44em) {
    footer .contain {
        padding:6.25em 1.5em
    }
}

.footer_logo {
    float: left;
    margin-bottom: 2.5em;
    width: 60px;
    height: 60px
}

@media (min-width: 33.75em) {
    .footer_logo {
        position:absolute;
        top: 3.25em;
        left: 1.5em
    }
}

@media (min-width: 44em) {
    .footer_logo {
        top:5em;
        width: 80px;
        height: 80px
    }
}

nav.foot {
    clear: left
}

nav.foot ul.footer_nav {
    list-style-type: none;
    margin: 0 0 2.5em;
    background: #fff;
    padding: 0;
    border-radius: .125em;
    box-shadow: 0 .125em .25em 0 rgba(46,61,73,.12)
}

nav.foot ul.footer_nav h3 {
    position: relative;
    cursor: pointer;
    font-size: .75em;
    line-height: 4em;
    padding: 0 1.5em;
    text-transform: uppercase;
    color: #557188;
    margin: 0
}

nav.foot ul.footer_nav h3::after {
    content: "+";
    position: absolute;
    right: .75em;
    top: 0;
    font-size: 1.75em;
    font-weight: 400;
    opacity: .3;
    color: #2e3d49;
    transition: opacity .3s ease,transform .3s ease
}

nav.foot ul.footer_nav h3:hover::after {
    opacity: .6
}

nav.foot ul.footer_nav>li {
    display: block;
    overflow: hidden;
    max-height: 3em;
    transition: max-height .3s ease
}

nav.foot ul.footer_nav>li.nav--on {
    max-height: 20em
}

nav.foot ul.footer_nav>li.nav--on h3::after {
    opacity: 1;
    transform: rotate(45deg)
}

nav.foot ul.footer_nav ul {
    list-style-type: none;
    margin: 0;
    padding: 0 0 1em
}

nav.foot ul.footer_nav ul li a {
    display: block;
    font-size: .875em;
    text-decoration: none;
    padding: .75em 2em .75em 3em;
    color: #2e3d49;
    transition: color .3s ease
}

nav.foot ul.footer_nav ul li a:hover {
    color: #07090a
}

@media (min-width: 33.75em) {
    nav.foot {
        clear:none;
        float: right;
        width: 100%;
        padding-left: 7.875em
    }

    nav.foot ul.footer_nav {
        margin-bottom: 4.5em
    }
}

@media (min-width: 45em) {
    nav.foot ul.footer_nav {
        display:-ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        background: 0 0;
        border-radius: 0;
        box-shadow: none
    }

    nav.foot ul.footer_nav h3 {
        line-height: 1em;
        padding: 0;
        margin-bottom: 1.5em;
        cursor: default
    }

    nav.foot ul.footer_nav h3::after {
        display: none
    }

    nav.foot ul.footer_nav>li {
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: 45%;
        margin-right: 10%;
        max-height: 20em
    }

    nav.foot ul.footer_nav>li:nth-child(2n) {
        margin-right: 0
    }

    nav.foot ul.footer_nav ul {
        padding-bottom: 3em
    }

    nav.foot ul.footer_nav ul li a {
        padding: .5em 0
    }
}

@media (min-width: 52em) {
    nav.foot ul.footer_nav {
        -ms-flex-wrap:nowrap;
        flex-wrap: nowrap
    }

    nav.foot ul.footer_nav h3 {
        margin-bottom: 2em
    }

    nav.foot ul.footer_nav>li {
        width: auto;
        margin-right: 0
    }

    nav.foot ul.footer_nav>li:last-child {
        max-width: 8em
    }

    nav.foot ul.footer_nav ul {
        padding-bottom: 0
    }
}

@media (min-width: 67.5em) {
    nav.foot {
        padding-left:18.75em
    }

    nav.foot ul.footer_nav {
        margin-bottom: 7.5em
    }
}

.footer_secondary {
    clear: both
}

@media (min-width: 33.75em) {
    .footer_secondary {
        padding-left:7.875em
    }
}

@media (min-width: 67.5em) {
    .footer_secondary {
        padding-left:0
    }
}

.utility .dd-container {
    float: left;
    width: 13.75em;
    margin-right: 1.5em;
    margin-bottom: 2em
}

.utility .dd-select {
    padding-left: 1.5em;
    border: none;
    box-shadow: 0 .125em .25em 0 rgba(46,61,73,.12)
}

.utility .dd-options {
    border: none;
    max-height: 15.5em
}

.utility .dd-options li:first-child .dd-option-image {
    top: 52%
}

.utility .dd-options li:last-child .dd-option-image {
    top: 48%
}

.utility .dd-option {
    position: relative;
    padding-left: 2.75em
}

.utility .dd-option-image,.utility .dd-selected-image {
    position: absolute;
    left: 1em;
    top: 50%;
    width: 1em;
    margin-right: .5em;
    transform: translateY(-50%)
}

.utility .copyright {
    display: block;
    clear: left;
    font-size: .875em;
    color: #557188;
    margin-bottom: 2.857142857em;
    text-align: left
}

.utility .copyright span {
    display: block
}

@media (min-width: 45em) {
    .utility .dd-select.dd-open {
        border-radius:0 0 .125em .125em
    }

    .utility .dd-options {
        bottom: 100%;
        max-height: 35em;
        border-radius: .125em .125em 0 0
    }
}

@media (min-width: 52em) {
    .utility .dd-container {
        margin-bottom:0
    }

    .utility .copyright {
        clear: none;
        float: left;
        margin-bottom: 0;
        padding-top: .3em
    }
}

@media (min-width: 67.5em) {
    .utility .copyright {
        padding-top:0;
        line-height: 3.285714286em
    }

    .utility .copyright span {
        display: inline
    }

    .utility .copyright span::before {
        content: "| "
    }
}

nav.social {
    clear: both;
    padding-top: 2em
}

nav.social ul.social_links {
    list-style-type: none;
    margin: 0;
    padding: 0
}

nav.social ul.social_links li {
    display: inline-block
}

nav.social ul.social_links li a {
    display: block;
    width: 1.875em;
    height: 1.875em;
    margin-right: 1.5em;
    line-height: 0;
    opacity: .6;
    transition: opacity .3s ease
}

nav.social ul.social_links li a:hover {
    opacity: .8
}

@media (min-width: 57em) {
    nav.social {
        clear:none;
        float: right;
        padding-top: .5em
    }

    nav.social ul.social_links li:last-child a {
        margin-right: 0
    }
}

.template_listing header {
    overflow: hidden;
    padding: 1.5em
}

.template_listing header .page_title {
    display: none;
    color: #525c65;
    font-size: .9375em;
    line-height: 1.333333333em
}

.template_listing .outer_contain {
    position: relative;
    padding: 0 1.5em 6.5em;
    overflow: hidden;
    background: #f4f4ef
}

.template_listing .outer_contain::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: -1.625em;
    right: -9em;
    width: 65.25em;
    height: 65.25em;
    background: url(../images/bg_pattern.min.svg) no-repeat center;
    background-size: cover
}

.template_listing .outer_contain::after {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 5.375em;
    background: #fff
}

.template_listing .outer_contain .contain {
    position: relative;
    margin-top: 1em;
    z-index: 3
}

@media (min-width: 25em) {
    .template_listing header .page_title {
        display:block;
        float: right
    }
}

@media (min-width: 30em) {
    .template_listing header {
        padding:2.875em 1.5em 2.875em
    }

    .template_listing header .page_title {
        line-height: 1.6em
    }
}

.listing_block {
    position: relative;
    padding: 2.75em 2.75em 2.75em 5.5em;
    margin-bottom: 5em;
    background: #fff;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
}

.listing_block h2 {
    font-size: 1.5em;
    font-weight: 300;
    color: #2e3d49
}

.listing_block::before {
    content: "";
    position: absolute;
    top: 1.875em;
    left: -.625em;
    width: 4.25em;
    height: 4.25em;
    background: #f95c3c url(../images/icons/code.min.svg) no-repeat center;
    background-size: 55%
}

.listing_block.shipped::before {
    background: #02ccba url(../images/icons/ship.min.svg) no-repeat center;
    background-size: 55%
}

.listing_block:last-child {
    margin-bottom: 0
}

@media (min-width: 50em) {
    .listing_block {
        padding:3.75em 3.75em 3.75em 7.5em
    }

    .listing_block h2 {
        font-size: 2.125em
    }

    .listing_block::before {
        width: 6.25em;
        height: 6.25em
    }
}

.template_list {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.template_list li {
    position: relative;
    font-size: .875em;
    font-weight: 600;
    color: #697681;
    text-transform: uppercase;
    padding: 1em 0;
    border-bottom: 1px solid rgba(0,0,0,.1)
}

.template_list li a {
    color: #02b3e4;
    text-decoration: none;
    transition: color .3s ease
}

.template_list li a:hover {
    color: #028bb1
}

.template_list li::after {
    content: "On Deck";
    text-transform: none;
    font-style: italic;
    display: block;
    opacity: .75;
    color: #9fa8b1
}

.template_list li.status_content_rev::after {
    content: "Content Review";
    color: #ffae0c
}

.template_list li.status_dev_rev::after {
    content: "Development Review";
    color: #f95c3c
}

.template_list li.status_dev::after {
    content: "In Development";
    color: #02b3e4
}

.template_list li.status_shipped::after {
    content: "Shipped";
    color: #02ccba
}

.template_list li:last-child {
    border-bottom: none
}

@media (min-width: 42.5em) {
    .template_list li::after {
        text-transform:uppercase;
        font-style: normal;
        float: right;
        opacity: 1
    }
}

.jspContainer {
    overflow: visible;
    position: relative;
    outline: 0 none;
    -webkit-overflow-scrolling: touch
}

.jspPane {
    position: absolute
}

.jspVerticalBar {
    position: absolute;
    top: 0;
    right: 0;
    width: 16px;
    height: 100%;
    background: red
}

.jspHorizontalBar {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: .8125em;
    border-radius: 1em;
    background: 0 0;
    display: none
}

@media (min-width: 22em) {
    .jspHorizontalBar {
        display:block
    }
}

.jspCap {
    display: none
}

.jspHorizontalBar .jspCap {
    float: left
}

.jspTrack {
    background: rgba(46,61,73,.1);
    border-radius: 1em;
    position: relative
}

.jspDrag {
    background: #7d97ad;
    position: relative;
    top: 0;
    left: 0;
    border-radius: 1em;
    cursor: pointer
}

.jspHorizontalBar .jspDrag,.jspHorizontalBar .jspTrack {
    float: left;
    height: 100%
}

.jspArrow {
    background: #50506d;
    text-indent: -20000px;
    display: block;
    cursor: pointer;
    padding: 0;
    margin: 0
}

.jspArrow.jspDisabled {
    cursor: default;
    background: #80808d
}

.jspVerticalBar .jspArrow {
    height: 16px
}

.jspHorizontalBar .jspArrow {
    width: 16px;
    float: left;
    height: 100%
}

.jspVerticalBar .jspArrow:focus {
    outline: 0
}

.jspCorner {
    background: #eeeef4;
    float: left;
    height: 100%
}

* html .jspCorner {
    margin: 0 -3px 0 0
}

html.remodal-is-locked {
    overflow: hidden;
    -ms-touch-action: none;
    touch-action: none
}

.remodal,[data-remodal-id] {
    display: none
}

.remodal-overlay {
    position: fixed;
    z-index: 9999;
    top: -99em;
    right: -99em;
    bottom: -99em;
    left: -99em;
    display: none
}

.remodal-wrapper {
    position: fixed;
    z-index: 10000;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    overflow: auto;
    text-align: center;
    -webkit-overflow-scrolling: touch
}

.remodal-wrapper::after {
    display: inline-block;
    height: 100%;
    margin-left: -.05em;
    content: ""
}

.remodal-overlay,.remodal-wrapper {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.remodal {
    position: relative;
    outline: 0;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%
}

.remodal-is-initialized {
    display: inline-block
}

.remodal-overlay {
    background: rgba(46,61,73,.8)
}

.remodal-overlay.remodal-is-closing,.remodal-overlay.remodal-is-opening {
    animation-duration: .3s;
    animation-fill-mode: forwards
}

.remodal-overlay.remodal-is-opening {
    animation-name: remodal-overlay-opening-keyframes
}

.remodal-overlay.remodal-is-closing {
    animation-name: remodal-overlay-closing-keyframes
}

.remodal-wrapper {
    padding: 1em 1em 0
}

.remodal-wrapper::after {
    vertical-align: middle
}

.remodal {
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 1em;
    padding: 2.5em 7%;
    transform: translate3d(0,0,0);
    color: #525c65;
    background: #fff;
    vertical-align: middle;
    max-width: 38.75em
}

.remodal.no_pad_img {
    padding: 0
}

.remodal.no_pad_img img {
    float: left
}

.remodal h1 {
    font-size: 1.5em;
    margin-bottom: 1.25em;
    color: #2e3d49;
    font-weight: 300
}

.remodal p {
    padding: 0 1em
}

.remodal form {
    padding-top: 2em;
    width: 100%
}

.remodal form input[type=text] {
    width: 100%;
    margin-bottom: 2em
}

.remodal form .btn {
    margin: 0 auto
}

@media (min-width: 40em) {
    .remodal h1 {
        font-size:1.75em
    }
}

.remodal.remodal-is-closing,.remodal.remodal-is-opening {
    animation-duration: .3s;
    animation-fill-mode: forwards
}

.remodal.remodal-is-opening {
    animation-name: remodal-opening-keyframes
}

.remodal.remodal-is-closing {
    animation-name: remodal-closing-keyframes
}

.remodal-close {
    position: absolute;
    top: 1em;
    right: 1em;
    display: block;
    overflow: visible;
    width: 1em;
    height: 1em;
    margin: 0;
    padding: 0;
    opacity: .5;
    cursor: pointer;
    border: none;
    outline: 0;
    transition: opacity .3s ease;
    background: url(/assets/images/svgs/icon_close_dark.svg) no-repeat center;
    background-size: contain
}

.remodal-close:hover {
    opacity: .7
}

.remodal-close:focus {
    opacity: .9
}

.remodal-cancel,.remodal-confirm {
    font: inherit;
    display: inline-block;
    overflow: visible;
    min-width: 110px;
    margin: 0;
    padding: 12px 0;
    cursor: pointer;
    transition: background .2s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    border: 0;
    outline: 0
}

.remodal-confirm {
    color: #fff;
    background: #81c784
}

.remodal-confirm:focus,.remodal-confirm:hover {
    background: #66bb6a
}

.remodal-cancel {
    color: #fff;
    background: #e57373
}

.remodal-cancel:focus,.remodal-cancel:hover {
    background: #ef5350
}

.remodal-cancel::-moz-focus-inner,.remodal-close::-moz-focus-inner,.remodal-confirm::-moz-focus-inner {
    padding: 0;
    border: 0
}

@keyframes remodal-opening-keyframes {
    from {
        transform: scale(1.05);
        opacity: 0
    }

    to {
        transform: none;
        opacity: 1
    }
}

@keyframes remodal-closing-keyframes {
    from {
        transform: scale(1);
        opacity: 1
    }

    to {
        transform: scale(.95);
        opacity: 0
    }
}

@keyframes remodal-overlay-opening-keyframes {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes remodal-overlay-closing-keyframes {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

.dd-select {
    border-radius: .125em;
    background: #fff;
    border: 1px solid #dbe2e8;
    position: relative;
    cursor: pointer;
    box-shadow: 0 .1em .125em 0 rgba(46,61,73,.08);
    transition: box-shadow .3s ease
}

.dd-select .dd-selected {
    overflow: hidden;
    display: block;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding: .6em 2em .65em 1em
}

.dd-select .dd-selected .dd-selected-text {
    cursor: pointer;
    font-size: .9375em;
    color: #697681
}

.dd-select .dd-pointer {
    display: block;
    width: 13px;
    height: 7px;
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translateY(-50%);
    opacity: .3;
    background: url(../images/icons/drop_arrow.min.svg) no-repeat center;
    transition: opacity .3s ease,transform .3s ease
}

.dd-select:hover {
    box-shadow: 0 .07em .1125em 0 rgba(46,61,73,.06)
}

.dd-select:hover .dd-pointer {
    opacity: .6
}

.dd-select.dd-open {
    border-radius: .125em .125em 0 0
}

.dd-options {
    border: 1px solid #dbe2e8;
    border-top: none;
    list-style-type: none;
    display: none;
    position: absolute;
    z-index: 2000;
    margin: 0;
    padding: 0;
    background: #fff;
    overflow: auto;
    width: 100%;
    border-radius: 0 0 .125em .125em
}

.dd-options li a {
    display: block;
    cursor: pointer;
    font-size: .9375em;
    color: #525c65;
    padding: .75em 1.066666667em;
    transition: color .3s ease,background .3s ease
}

.dd-options li a label {
    cursor: pointer
}

.dd-options li a:hover {
    color: #24292d;
    background: #fafbfc
}

.dd-options li:first-child a {
    padding-top: 1em
}

.dd-options li:last-child a {
    padding-bottom: 1em
}

.dd-container {
    position: relative
}

.cards_contain {
    padding: 0 1.5em;
    text-align: left;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.cards_contain .card {
    margin-bottom: 2em
}

.cards_contain.contact_cards {
    margin: 0 auto 2em;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.cards_contain.contact_cards .card:last-child {
    margin: 0 auto
}

@media (min-width: 45em) {
    .cards_contain .card {
        width:47.5%;
        max-width: 47.5%;
        margin: 0 2.5% 2em
    }

    .cards_contain .card:nth-child(2n) {
        margin-right: 0
    }

    .cards_contain .card:nth-child(2n+1) {
        margin-left: 0
    }

    .single_row .cards_contain .card:last-child {
        margin-bottom: 0
    }
}

@media (min-width: 58.125em) {
    .cards_contain .card {
        width:31%;
        max-width: 31%;
        margin: 0 1.75% 2em
    }

    .cards_contain .card:nth-child(2n) {
        margin-right: 1.75%
    }

    .cards_contain .card:nth-child(2n+1) {
        margin-left: 1.75%
    }

    .cards_contain .card:nth-child(3n) {
        margin-right: 0
    }

    .cards_contain .card:nth-child(3n+1) {
        margin-left: 0
    }

    .single_row .cards_contain .card {
        margin-bottom: 0
    }
}

.card {
    position: relative;
    border: 1px solid #dbe2e8;
    background: #fff;
    padding: 2em 1.5em;
    border-radius: .1875em;
    width: 100%;
    display: block;
    -ms-flex-positive: 1;
    flex-grow: 1;
    text-decoration: none;
    box-shadow: 0 .125em .25em 0 rgba(46,61,73,.12);
    transition: box-shadow .3s ease,border .3s ease
}

.card p {
    line-height: 1.5em
}

.card.contact_card {
    position: relative;
    padding-bottom: 6.625em;
    border: none;
    border-radius: none;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12);
    text-decoration: none;
    transition: box-shadow .3s ease,transform .3s ease
}

.card.contact_card h2 {
    font-weight: 600;
    font-size: 1.375em;
    color: #2e3d49;
    margin-bottom: .75em
}

.card.contact_card p {
    font-size: .875em
}

.card.contact_card .link_text {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    font-size: .8125em;
    text-transform: uppercase;
    letter-spacing: 1.25px;
    padding: 0 1.846153846em 4.153846154em;
    color: #02b3e4;
    transition: color .3s ease
}

.card.contact_card:hover {
    box-shadow: 0 .3125em .5em 0 rgba(46,61,73,.05);
    transform: translateY(.125em)
}

.card.contact_card:hover .link_text {
    color: #028bb1
}

.card.course_card,.card.job_card {
    padding: 0
}

.card.course_card.new::before,.card.job_card.new::before {
    content: "New";
    position: absolute;
    display: block;
    font-size: .6875em;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    padding: 0 .75em;
    line-height: 1.818181818em;
    top: 2.75em;
    left: -2.125em;
    letter-spacing: 1.5px;
    background: #02ccba;
    transform: rotate(-90deg)
}

.card.course_card img,.card.job_card img {
    float: right;
    width: 100%
}

.card.course_card .course_info,.card.course_card .job_info,.card.job_card .course_info,.card.job_card .job_info {
    clear: right;
    padding: 1.5em;
    min-height: 7.75em
}

.card.course_card .course_info h3,.card.course_card .job_info h3,.card.job_card .course_info h3,.card.job_card .job_info h3 {
    font-size: .875em;
    margin-bottom: .5em;
    color: #7d97ad
}

.card.course_card .course_info h2,.card.course_card .job_info h2,.card.job_card .course_info h2,.card.job_card .job_info h2 {
    font-size: 1.125em;
    margin-bottom: 0;
    color: #2e3d49;
    font-weight: 400
}

.card.course_card .job_info,.card.job_card .job_info {
    padding: 0
}

.card.nanodegree_card {
    min-height: 24.375em;
    padding-bottom: 8.75em;
    background-size: 70%
}

.card.nanodegree_card h4 {
    font-size: .875em;
    font-weight: 600;
    margin-bottom: 1.5em;
    color: #dbe2e8;
    text-transform: uppercase
}

.card.nanodegree_card h2 {
    position: relative;
    font-size: 1.375em;
    font-weight: 600;
    margin-bottom: .5em;
    line-height: 1.125em;
    color: #2e3d49
}

.card.nanodegree_card h2::before {
    content: "";
    position: absolute;
    top: -25%;
    left: -1.181em;
    width: .181818182em;
    height: 150%;
    background: #02b3e4
}

.card.nanodegree_card.new::before {
    content: "New";
    position: absolute;
    display: block;
    font-size: .6875em;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    padding: 0 .75em;
    line-height: 1.818181818em;
    top: 7em;
    left: -2.125em;
    letter-spacing: 1.5px;
    background: #02ccba;
    transform: rotate(-90deg)
}

.card.nanodegree_card.new h2::before {
    display: none
}

.card.nanodegree_card h3 {
    font-size: 1em;
    font-weight: 300;
    margin-bottom: 1.5em;
    color: #2e3d49
}

.card.nanodegree_card p {
    font-size: .875em;
    line-height: 2em;
    margin-bottom: 0;
    color: #2e3d49
}

.card.nanodegree_card .co_created {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 0 1.5em 2em;
    overflow: hidden
}

.card.nanodegree_card .co_created::after {
    content: "";
    width: 1.5em;
    height: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
    background: linear-gradient(to right,rgba(255,255,255,0) 0,#fff 50%,#fff 100%)
}

.card.nanodegree_card .co_created h5 {
    font-size: .75em;
    font-weight: 400;
    margin-bottom: 1em;
    letter-spacing: 1.2px;
    color: #7d97ad;
    text-transform: uppercase
}

.card.nanodegree_card .co_created ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

.card.nanodegree_card .co_created ul li {
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-right: 5.2631579%
}

.card.nanodegree_card .co_created ul li:last-child {
    margin-right: 0
}

.card.nanodegree_card .co_created ul li.mongo {
    max-width: 6em;
    width: 6em
}

.card.nanodegree_card .co_created ul li.facebook {
    max-width: 4.85em;
    width: 4.85em
}

.card.nanodegree_card .co_created ul li.zipfian {
    max-width: 5em;
    width: 5em
}

.card.nanodegree_card .co_created ul li.google {
    max-width: 3.75em;
    width: 3.75em
}

.card.nanodegree_card .co_created ul li.github {
    max-width: 3.125em;
    width: 3.125em
}

.card.nanodegree_card .co_created ul li.att {
    max-width: 3.375em;
    width: 3.375em
}

.card.nanodegree_card .co_created ul li.hack_reactor {
    max-width: 5.25em;
    width: 5.25em
}

.card.testimonial_card {
    padding: 0;
    min-height: 0
}

.card.testimonial_card img {
    max-height: 2.625em;
    margin-bottom: 1.5em
}

.card.testimonial_card blockquote {
    margin: 0;
    height: 100%;
    padding: 2em 1.5em 11em
}

.card.testimonial_card blockquote p {
    color: #525c65;
    line-height: 1.75em
}

.card.testimonial_card blockquote p::before {
    content: open-quote
}

.card.testimonial_card blockquote p::after {
    content: close-quote
}

.card.testimonial_card blockquote cite {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 2em 1.5em;
    background: #fafbfc
}

.card.testimonial_card blockquote cite h3 {
    font-weight: 600;
    font-size: 1.125em;
    color: #2e3d49;
    margin-bottom: .5em
}

.card.testimonial_card blockquote cite h4 {
    font-weight: 300;
    color: #525c65;
    font-size: 1em;
    margin-bottom: 0
}

@media (min-width: 35em) {
    .card {
        padding:2.5em 2.125em
    }

    .card.contact_card .link_text {
        padding: 0 2.615384615em 4.153846154em
    }

    .card.nanodegree_card .co_created {
        padding: 0 2.125em 2.5em
    }

    .card.nanodegree_card h2::before {
        left: -1.65em
    }

    .card.nanodegree_card.new::before {
        top: 7.5em
    }

    .card.testimonial_card blockquote {
        padding: 2.5em 2.125em 12.5em
    }

    .card.testimonial_card blockquote cite {
        padding: 2.5em 2.125em
    }
}

a.card:hover {
    box-shadow: 0 .2em 1.115em 0 rgba(46,61,73,.1);
    border: 1px solid #bcc9d4
}

a.contact_card:hover {
    border: none
}

.scroll_cards {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.scroll_cards.four_cards {
    width: 64em
}

.scroll_cards.four_cards li:nth-child(4n) {
    margin-right: 0
}

.scroll_cards.success_grid_cards li {
    margin: 0 1em 1.25em 0
}

.scroll_cards.success_grid_cards li:nth-child(10n) {
    margin-right: 0
}

.scroll_cards li {
    float: left;
    display: inline-block;
    width: 17.5em;
    margin: 0 1em 3.125em 0
}

.scroll_cards li:nth-child(10n) {
    margin-right: 0
}

.scroll_cards li:last-child {
    margin-right: 0
}

@media (min-width: 35em) {
    .scroll_cards.four_cards {
        width:96.25em
    }

    .scroll_cards.success_grid_cards li {
        margin: 0 1.25em 1.25em 0
    }

    .scroll_cards li {
        float: left;
        display: inline-block;
        width: 23.125em;
        margin: 0 1.25em 3.125em 0
    }
}

.scroll_cards[data-cards-size="1"] {
    width: 296px
}

.scroll_cards[data-cards-size="2"] {
    width: 592px
}

.scroll_cards[data-cards-size="3"] {
    width: 888px
}

.scroll_cards[data-cards-size="4"] {
    width: 1184px
}

.scroll_cards[data-cards-size="5"] {
    width: 1480px
}

.scroll_cards[data-cards-size="6"] {
    width: 1776px
}

.scroll_cards[data-cards-size="7"] {
    width: 2072px
}

.scroll_cards[data-cards-size="8"] {
    width: 2368px
}

.scroll_cards[data-cards-size="9"] {
    width: 2664px
}

.scroll_cards[data-cards-size="10"] {
    width: 2960px
}

.scroll_cards[data-cards-size="11"] {
    width: 3256px
}

.scroll_cards[data-cards-size="12"] {
    width: 3552px
}

.scroll_cards[data-cards-size="13"] {
    width: 3848px
}

.scroll_cards[data-cards-size="14"] {
    width: 4144px
}

.scroll_cards[data-cards-size="15"] {
    width: 4440px
}

.scroll_cards[data-cards-size="16"] {
    width: 4736px
}

.scroll_cards[data-cards-size="17"] {
    width: 5032px
}

.scroll_cards[data-cards-size="18"] {
    width: 5328px
}

.scroll_cards[data-cards-size="19"] {
    width: 5624px
}

.scroll_cards[data-cards-size="20"] {
    width: 5920px
}

@media (min-width: 35em) {
    .scroll_cards[data-cards-size="1"] {
        width:390px
    }

    .scroll_cards[data-cards-size="2"] {
        width: 780px
    }

    .scroll_cards[data-cards-size="3"] {
        width: 1170px
    }

    .scroll_cards[data-cards-size="4"] {
        width: 1560px
    }

    .scroll_cards[data-cards-size="5"] {
        width: 1950px
    }

    .scroll_cards[data-cards-size="6"] {
        width: 2340px
    }

    .scroll_cards[data-cards-size="7"] {
        width: 2730px
    }

    .scroll_cards[data-cards-size="8"] {
        width: 3120px
    }

    .scroll_cards[data-cards-size="9"] {
        width: 3510px
    }

    .scroll_cards[data-cards-size="10"] {
        width: 3900px
    }

    .scroll_cards[data-cards-size="11"] {
        width: 4290px
    }

    .scroll_cards[data-cards-size="12"] {
        width: 4680px
    }

    .scroll_cards[data-cards-size="13"] {
        width: 5070px
    }

    .scroll_cards[data-cards-size="14"] {
        width: 5460px
    }

    .scroll_cards[data-cards-size="15"] {
        width: 5850px
    }

    .scroll_cards[data-cards-size="16"] {
        width: 6240px
    }

    .scroll_cards[data-cards-size="17"] {
        width: 6630px
    }

    .scroll_cards[data-cards-size="18"] {
        width: 7020px
    }

    .scroll_cards[data-cards-size="19"] {
        width: 7410px
    }

    .scroll_cards[data-cards-size="20"] {
        width: 7800px
    }
}

.scroll_card {
    display: block;
    cursor: pointer!important;
    height: 18.75em;
    background: #fff;
    width: 100%;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12);
    text-decoration: none;
    transition: box-shadow .3s ease,transform .3s ease
}

.scroll_card a {
    text-decoration: none
}

.scroll_card:hover {
    box-shadow: 0 .3125em .5em 0 rgba(46,61,73,.05);
    transform: translateY(.125em)
}

.scroll_card .overflow_contain {
    overflow: hidden;
    height: 100%
}

.scroll_card .card_info {
    padding: 1.25em
}

.scroll_card .card_info h4 {
    font-size: .75em;
    font-weight: 400;
    margin-bottom: .5em;
    color: #dbe2e8;
    text-transform: uppercase
}

.scroll_card .card_info h3 {
    font-size: .875em;
    margin-bottom: .5em;
    color: #7d97ad
}

.scroll_card .card_info h2 {
    font-size: 1.125em;
    letter-spacing: -.5px;
    font-weight: 600;
    margin-bottom: .5em;
    color: #2e3d49
}

.scroll_card .card_info p {
    font-size: .875em;
    line-height: 1.5em;
    color: #2e3d49
}

.scroll_card .card_info p:last-child {
    margin-bottom: 0
}

.scroll_card p {
    line-height: 1.5em
}

.scroll_card.blog_post .image_container {
    position: relative;
    overflow: hidden;
    height: 11.25em
}

.scroll_card.blog_post .image_container img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 23.75em;
    max-width: 23.75em
}

.scroll_card.blog_post h2 {
    margin-bottom: 0
}

.scroll_card.success.short {
    height: 9.375em
}

.scroll_card.success.short .success_info h3 {
    color: #02b3e4
}

.scroll_card.success .success_info h2 {
    margin-bottom: 0
}

.scroll_card.success .success_info h3 {
    color: rgba(46,61,73,.5)
}

.scroll_card.success .success_info.with_avatar .avatar {
    display: none;
    width: 3.75em;
    height: 3.75em;
    border-radius: 3em
}

.scroll_card.success .quote::before {
    content: open-quote
}

.scroll_card.success .quote::after {
    content: "..."close-quote
}

.scroll_card.lesson .overflow_contain,.scroll_card.project .overflow_contain {
    padding: 2.5em
}

.scroll_card.lesson h3,.scroll_card.project h3 {
    font-size: .875em;
    text-transform: uppercase;
    font-weight: 600;
    color: #dbe2e8;
    margin-bottom: .75em
}

.scroll_card.lesson h2,.scroll_card.project h2 {
    font-size: 1.125em;
    color: #2e3d49;
    font-weight: 600;
    margin-bottom: 1.25em
}

@media (min-width: 44em) {
    .scroll_card.lesson h2,.scroll_card.project h2 {
        font-size:1.375em
    }
}

.scroll_card.lesson p,.scroll_card.project p {
    font-size: .875em
}

.scroll_card.lesson,.scroll_card.news,.scroll_card.project,.scroll_card.success {
    position: relative
}

.scroll_card.lesson::after,.scroll_card.news::after,.scroll_card.project::after,.scroll_card.success::after {
    content: "";
    width: 100%;
    height: 3.5em;
    position: absolute;
    left: 0;
    bottom: 0;
    background: linear-gradient(to bottom,rgba(255,255,255,0) 0,#fff 50%,#fff 100%)
}

.scroll_card.success.short::after {
    display: none
}

.scroll_card.project::before {
    content: "";
    width: .25em;
    position: absolute;
    top: 2em;
    left: -.125em;
    height: 2.25em;
    background: #f95c3c
}

.scroll_card.news p::after {
    content: "..."
}

@media (min-width: 35em) {
    .scroll_card .card_info {
        padding:1.5em 1.875em
    }

    .scroll_card.success .success_info {
        position: relative;
        margin-bottom: 1.5em
    }

    .scroll_card.success .success_info.with_avatar {
        padding-left: 4.75em
    }

    .scroll_card.success .success_info.with_avatar .avatar {
        position: absolute;
        display: block;
        top: .25em;
        left: 0
    }

    .scroll_card.news h2 {
        margin-bottom: 1em
    }
}

.tabs {
    background: #fff;
    border: 1px solid #dbe2e8;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
}

.tabs ul.tab_nav {
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: flex
}

.tabs ul.tab_nav li {
    -ms-flex-positive: 1;
    flex-grow: 1
}

@media (min-width: 40em) {
    .tabs ul.tab_nav li {
        width:50%
    }
}

.tabs ul.tab_nav li a {
    font-size: .75em;
    text-transform: uppercase;
    display: block;
    color: #7d97ad;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    padding: 1.5em .75em;
    letter-spacing: .5px;
    background: #fafbfc;
    border-right: 1px solid #dbe2e8;
    border-bottom: 1px solid #dbe2e8;
    transition: color .3s ease;
    line-height: 18px
}

@media (min-width: 35em) {
    .tabs ul.tab_nav li a {
        letter-spacing:2px
    }
}

.tabs ul.tab_nav li a:hover {
    color: #4c6478
}

.tabs ul.tab_nav li:last-child a {
    border-right: none
}

.tabs .tab_content {
    padding-top: 2.875em;
    display: none
}

.tabs .tab_content hr {
    margin: 0;
    padding: 0;
    width: 100%;
    border: none;
    border-top: 1px solid #dbe2e8
}

.tabs .tab_content .enroll {
    display: none
}

.tabs .tab_content .checks {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.tabs .tab_content .checks li {
    display: block;
    position: relative;
    padding: .5em 0 .5em 2.5em;
    color: #525c65
}

@media (min-width: 35em) {
    .tabs .tab_content .checks li {
        padding:1.5em 0 1.5em 2.5em
    }
}

.tabs .tab_content .checks li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 1.25em;
    height: 1.25em;
    background: #15c26b url(/assets/images/svgs/check_white.min.svg) no-repeat center;
    background-size: 60%;
    border-radius: 1em;
    transform: translateY(-50%)
}

.tabs .tab_content h1 {
    text-align: center;
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: 0;
    color: #2e3d49
}

.tabs .tab_content a.text_link {
    display: block;
    text-align: center;
    margin-top: 1.25em;
    font-size: .8125em;
    color: #02b3e4;
    text-decoration: none;
    transition: color .3s ease
}

.tabs .tab_content a.text_link:hover {
    color: #028bb1
}

.tabs .what_get_content,.tabs .what_is_content {
    padding: 2.875em 1.5em;
    min-height: 400px
}

@media (min-width: 40em) {
    .tabs .tab_content h1 {
        font-size:2.5em
    }

    .tabs .what_get_content,.tabs .what_is_content {
        padding: 2.875em 5em
    }
}

@media (min-width: 50em) {
    .tabs .tab_content .checks {
        overflow:hidden
    }

    .tabs .tab_content .checks li {
        float: left;
        width: 47.5%;
        margin-right: 5%
    }

    .tabs .tab_content .checks li:nth-child(2n) {
        margin-right: 0
    }
}

.signup_contain.enroll_on .signin_content,.signup_contain.enroll_on .signup_content {
    padding-top: 0
}

.signup_contain.enroll_on .signin_content .no_enroll,.signup_contain.enroll_on .signup_content .no_enroll {
    display: none
}

.signup_contain.enroll_on .signin_content .enroll,.signup_contain.enroll_on .signup_content .enroll {
    display: block
}

@media (min-width: 70em) {
    .signup_contain.enroll_on .signin_content,.signup_contain.enroll_on .signup_content {
        padding-top:2.875em
    }

    .signup_contain.enroll_on .outer_contain .contain {
        max-width: 75.75em;
        padding: 3.75em 35em 7.5em 1.5em
    }
}

.signup--on .tabs ul.tab_nav li.signup_tab a {
    background: #fff;
    color: #2e3d49;
    border-bottom: none
}

.signup--on .tabs .signup_content {
    display: block
}

.signin--on .tabs ul.tab_nav li.signin_tab a {
    background: #fff;
    color: #2e3d49;
    border-bottom: none
}

.signin--on .tabs .signin_content {
    display: block
}

.signin--on .signup_disclaimer .required,.signin--on .signup_disclaimer .terms {
    display: none
}

.signin--on.enroll_on .signup_disclaimer .required {
    display: block
}

.what_get--on .tabs ul.tab_nav li.what_get_tab a {
    background: #fff;
    color: #2e3d49;
    border-bottom: none
}

.what_get--on .tabs .what_get_content {
    display: block
}

.what_is--on .tabs ul.tab_nav li.what_is_tab a {
    background: #fff;
    color: #2e3d49;
    border-bottom: none
}

.what_is--on .tabs .what_is_content {
    display: block
}

header.signup {
    padding: 1.5em
}

header.signup .logo-signup {
    float: none;
    display: block;
    width: 12.5em;
    margin: 0 auto
}

header.signup .logo-signup img {
    float: left
}

@media (min-width: 35em) {
    header.signup {
        padding:2em 1.5em
    }
}

@media (min-width: 45em) {
    header.signup {
        padding:3em 1.5em
    }
}

.signup_contain .btn {
    margin: 0 auto
}

.signup_contain .btn.last {
    margin: 1.5em auto 3em
}

.signup_contain .outer_contain {
    background: #f4f4ef
}

.signup_contain .outer_contain .contain {
    position: relative;
    max-width: 41.75em;
    padding: 1.5em 1.5em 4.5em
}

.signup_contain .inner_contain {
    padding: 0 9.6774194% 2.875em
}

@media (min-width: 35em) {
    .signup_contain .outer_contain .contain {
        padding:2.5em 1.5em 6em
    }
}

@media (min-width: 45em) {
    .signup_contain .outer_contain .contain {
        padding:3.75em 1.5em 7.5em
    }
}

fieldset {
    position: relative;
    border: none;
    margin: 2.5em 0 0;
    padding: 0 9.6774194% 1.5em
}

fieldset legend {
    position: relative;
    display: block;
    width: 100%;
    font-weight: 400;
    margin-bottom: 1em;
    color: #2e3d49
}

fieldset legend::after {
    content: "";
    position: absolute;
    top: .2em;
    right: 0;
    width: 1em;
    height: 1em;
    border: 2px solid #02ccba;
    border-radius: 1em
}

fieldset legend.section_complete::after {
    border-color: #15c26b;
    background: #15c26b url(/assets/images/svgs/check_white.min.svg) no-repeat center;
    background-size: contain
}

fieldset:first-of-type {
    margin-top: 0
}

fieldset .tooltip_contain {
    clear: both;
    position: relative
}

fieldset .tooltip_contain input {
    margin-bottom: 0
}

fieldset .tooltip_contain .tooltip {
    position: absolute;
    top: .65em;
    right: .5em
}

fieldset .input_contain {
    position: relative;
    clear: both;
    display: block;
    width: 100%;
    margin: 0 0 1.5em 0
}

fieldset .input_contain input {
    width: 100%;
    margin: 0;
    text-overflow: ellipsis
}

fieldset .input_contain.invalid input,fieldset .input_contain.valid input {
    padding-right: 2em
}

fieldset .input_contain.invalid input {
    border-color: #f04546
}

fieldset .dual_input_contain {
    float: left;
    width: 100%;
    border-radius: .125em;
    margin-bottom: 1.3125em;
    border: 1px solid #dbe2e8;
    outline: 0;
    box-shadow: 0 .25em .5em 0 rgba(46,61,73,.12);
    transition: box-shadow .3s ease,border .3s ease
}

fieldset .dual_input_contain:hover {
    box-shadow: 0 .125em .5em 0 rgba(46,61,73,.06)
}

fieldset .dual_input_contain:focus {
    box-shadow: none
}

fieldset .dual_input_contain .input_contain {
    clear: none;
    float: left;
    width: 50%;
    margin: 0;
    border: 0;
    box-shadow: none;
    border-radius: 0
}

fieldset .dual_input_contain .input_contain:first-child {
    border-right: 1px solid #dbe2e8
}

fieldset .dual_input_contain input {
    border: 0;
    box-shadow: none;
    border-radius: 0
}

fieldset .invalid::before,fieldset .valid::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: .5em;
    width: 1em;
    height: 1em;
    background: url(../images/icons/valid.min.svg) no-repeat center;
    background-size: contain;
    transform: translateY(-50%)
}

fieldset .invalid::before {
    background-image: url(../images/icons/invalid.min.svg)
}

fieldset .credit_card input {
    padding-right: 3em
}

fieldset .credit_card .credit_card_type {
    position: absolute;
    top: 50%;
    right: .5em;
    height: 1.25em;
    width: 1.875em;
    opacity: 0;
    transition: opacity .3s ease;
    transform: translateY(-50%)
}

fieldset .credit_card .credit_card_type.visa {
    opacity: 1;
    background: url(../images/icons/visa.min.svg) no-repeat center;
    background-size: contain
}

@media (min-width: 40em) {
    fieldset input {
        display:block
    }

    fieldset .input_contain.half {
        clear: none;
        float: left;
        width: 47.5%
    }

    fieldset .input_contain.half.last {
        margin-left: 5%
    }

    fieldset .tooltip_contain.small {
        clear: none;
        float: left;
        width: 23.75%;
        margin-left: 5%;
        margin-bottom: 2.5em
    }

    fieldset .dual_input_contain {
        width: 47.5%
    }
}

.step_two {
    max-height: 4em;
    overflow: hidden;
    transition: max-height .3s ease
}

.step_two input {
    opacity: 0;
    transition: background .3s ease,box-shadow .3s ease,border .3s ease,opacity .3s ease
}

.step_two_hide,.step_two_show {
    overflow: hidden;
    max-height: 30em;
    transition: max-height .3s ease,opacity .3s ease,padding .3s ease
}

.step_two--on .step_two {
    overflow: visible;
    max-height: 30em
}

.step_two--on .step_two input {
    opacity: 1
}

.step_two--on .step_two_hide {
    opacity: 0;
    max-height: 0;
    padding: 0 9.6774194%
}

.signup_disclaimer {
    padding-top: 2em;
    text-align: center
}

.signup_disclaimer p {
    font-size: .875em;
    font-weight: 300;
    color: #838f9a
}

.signup_disclaimer p:last-child {
    margin-bottom: 0
}

.signup_disclaimer a {
    white-space: nowrap;
    color: #02b3e4;
    text-decoration: none;
    transition: color .3s ease
}

.signup_disclaimer a:hover {
    color: #028bb1
}

.signup_social {
    padding: 2em 9.6774194% 3.75em;
    text-align: center;
    position: relative
}

.signup_social::before {
    content: "";
    width: 80%;
    top: 0;
    left: 10%;
    position: absolute;
    border-top: 1px solid #dbe2e8
}

.signup_social p {
    font-size: .875em;
    font-weight: 300;
    color: #838f9a;
    margin-bottom: 2em
}

.signup_social ul {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.signup_social ul li {
    display: inline-block;
    margin: 0 0 1.5em;
    font-size: .8125em;
    border-radius: .307692308em;
    width: 18.461538462em;
    max-width: 100%;
    border: 1px solid #dbe2e8;
    transition: border .3s ease
}

.signup_social ul li:last-child {
    margin-bottom: 0
}

.signup_social ul li a {
    display: block;
    padding: .5em;
    text-transform: uppercase;
    color: #2e3d49;
    line-height: 2.307692308em;
    text-decoration: none;
    transition: color .3s ease
}

.signup_social ul li span {
    display: inline-block;
    position: relative;
    padding-left: 3em;
    margin: 0 auto
}

.signup_social ul li span img {
    position: absolute;
    top: 50%;
    left: 0;
    width: 2em;
    height: 2em;
    transform: translateY(-50%)
}

.signup_social ul li:hover {
    border: 1px solid #bcc9d4
}

.signup_social ul li:hover a {
    color: #07090a
}

@media (min-width: 40em) {
    .signup_social ul {
        overflow:hidden
    }

    .signup_social ul li {
        float: left;
        width: 47.5%;
        margin-right: 5%;
        margin-bottom: 0
    }

    .signup_social ul li:last-child {
        margin-right: 0
    }
}

.message_contain {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    padding: 0 9.6774194%;
    transition: opacity .5s ease,max-height .5s ease,padding .5s ease
}

.message_contain.message--on {
    max-height: 20em;
    opacity: 1;
    padding: 0 9.6774194% 1.5em
}

.message_contain .message {
    position: relative;
    padding: 1em 3em 1em 1em;
    background: #91daee
}

.message_contain .message p {
    color: #2e3d49;
    margin: 0;
    font-size: .8125em;
    line-height: 1.5em
}

.message_contain .message .message_close {
    position: absolute;
    opacity: .5;
    top: 1.125em;
    right: 1em;
    width: 1em;
    height: 1em;
    transition: opacity .3s ease
}

.message_contain .message .message_close:hover {
    opacity: .7
}

@media (min-width: 40em) {
    .message_contain .message {
        padding:1em 3.75em 1em 1em
    }

    .message_contain .message p {
        font-size: 1em
    }

    .message_contain .message .message_close {
        top: 1.25em
    }
}

.subcription_details {
    padding: 3em 9.6774194%;
    margin-bottom: 3em;
    color: #2e3d49;
    border-bottom: 1px solid #dbe2e8;
    background-size: 50%
}

.subcription_details h3 {
    font-size: 1.125em
}

.subcription_details h4 {
    font-size: .8125em;
    font-weight: 300
}

.subcription_details ul.subscription_pricing {
    list-style-type: none;
    margin: 0 0 2em;
    padding: 0
}

.subcription_details ul.subscription_pricing li {
    font-size: .75em;
    position: relative;
    display: block;
    margin-bottom: .75em;
    color: #525c65;
    padding-right: 7em
}

.subcription_details ul.subscription_pricing li span {
    position: absolute;
    top: 0;
    right: 0;
    font-weight: 600;
    color: #2e3d49;
    text-transform: uppercase
}

.subcription_details .info {
    font-style: italic;
    color: #838f9a;
    font-size: .75em
}

.subcription_details .info span {
    white-space: nowrap
}

@media (min-width: 30em) {
    .subcription_details h4 {
        font-size:1em
    }

    .subcription_details ul.subscription_pricing li {
        font-size: 1em
    }

    .subcription_details .info {
        font-size: .8125em
    }
}

@media (min-width: 70em) {
    .subcription_details {
        position:absolute;
        width: 30em;
        top: 3.75em;
        right: 1.5em;
        border: 1px solid #dbe2e8;
        box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
    }
}

.enrollment {
    clear: both
}

.enrollment .outer_contain {
    background: #fafbfc
}

.enrollment .contain {
    max-width: 66.75em;
    padding: 3.5em 1.5em
}

.enrollment h2 {
    font-weight: 300;
    font-size: 1.75em;
    margin-bottom: .75em;
    text-align: center;
    color: #2e3d49
}

.enrollment .centered {
    text-align: center;
    max-width: 43.75em;
    margin: 0 auto 2em;
    display: block;
    color: #757c81
}

@media (min-width: 35em) {
    .enrollment .centered {
        margin-bottom:4em
    }
}

.enrollment .cards_contain {
    -ms-flex-pack: distribute;
    justify-content: space-around;
    padding: 0
}

.enrollment .cards_contain .card {
    max-width: 39em;
    width: 39em;
    margin: 0
}

.enrollment .icon_variant {
    margin-bottom: 5px
}

.enrollment .card.enrollment_card {
    padding: 1.875em 1.875em 12em
}

.enrollment .card.enrollment_card .more {
    max-height: 1px
}

@media (min-width: 35em) {
    .enrollment .card.enrollment_card .more {
        max-height:500px
    }
}

.enrollment .card.enrollment_card .more+[data-readmore-toggle] {
    position: absolute;
    border-bottom: none;
    height: auto;
    width: auto;
    left: 2.3em;
    display: inline-block;
    font-size: .8125em;
    text-transform: uppercase;
    font-weight: 600;
    color: #02b3e4;
    text-decoration: none;
    transition: color .3s ease,background .3s ease
}

.enrollment .card.enrollment_card .more+[data-readmore-toggle]:hover {
    color: #028bb1;
    text-decoration: none
}

@media (min-width: 35em) {
    .enrollment .card.enrollment_card .more+[data-readmore-toggle] {
        left:6.1em
    }
}

.enrollment .card.enrollment_card .ribbon {
    display: none
}

.enrollment .card.enrollment_card h2 {
    font-size: 1.5em;
    margin-bottom: .5em;
    text-align: left;
    color: #2e3d49
}

.enrollment .card.enrollment_card h2+p {
    color: #2e3d49;
    font-size: .875em;
    line-height: 1.475em;
    margin-bottom: 1.875em
}

.enrollment .card.enrollment_card ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    font-size: .875em;
    line-height: 1.375em
}

.enrollment .card.enrollment_card ul li {
    margin-bottom: 1.5em
}

.enrollment .card.enrollment_card ul h3 {
    font-weight: 600;
    font-size: .875em;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #7d97ad;
    margin-bottom: .375em
}

.enrollment .card.enrollment_card ul h3+p {
    color: #757c81
}

.enrollment .card.enrollment_card .guarantee {
    font-weight: 600
}

.enrollment .card.enrollment_card .enrollment_button_contain {
    background: #f1f3f6;
    width: 100%;
    bottom: 0;
    left: 0;
    position: absolute;
    padding: 1.875em;
    line-height: 1em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center
}

.enrollment .card.enrollment_card .enrollment_button_contain .column {
    display: block;
    width: 100%
}

.enrollment .card.enrollment_card .enrollment_button_contain .column h3 {
    text-transform: uppercase;
    font-size: 1.125em;
    letter-spacing: 1px;
    font-weight: 600;
    color: #2e3d49;
    margin: .5em 0
}

.enrollment .card.enrollment_card .enrollment_button_contain .column h3 .original-price {
    text-decoration: line-through
}

.enrollment .card.enrollment_card .enrollment_button_contain .column h3+p {
    font-size: .875em;
    color: #2e3d49
}

.enrollment .card.enrollment_card:not(:only-child):first-child .icon_variant {
    float: right;
    margin-top: .375em
}

@media (min-width: 35em) {
    .enrollment .card.enrollment_card:not(:only-child):first-child .icon_variant {
        margin-top:.75em
    }
}

.enrollment .card.enrollment_card+.enrollment_card {
    margin-top: 2em
}

.enrollment .card.enrollment_card+.enrollment_card .icon_variant {
    float: right;
    margin-top: .375em
}

@media (min-width: 35em) {
    .enrollment .card.enrollment_card+.enrollment_card .icon_variant {
        margin-top:.75em
    }
}

.enrollment .card.enrollment_card+.enrollment_card .callout_btn {
    background: #7d97ad
}

.enrollment .card.enrollment_card+.enrollment_card .callout_btn:hover {
    background: #607e97
}

.enrollment .cards_contain {
    -ms-flex-align: center;
    align-items: center
}

@media (min-width: 35em) {
    .enrollment h2 {
        font-size:2.125em
    }

    .enrollment .contain {
        padding: 7.5em 1.5em
    }

    .enrollment .card.enrollment_card {
        padding: 3.75em 5em 9em
    }

    .enrollment .card.enrollment_card h2 {
        font-size: 1.75em
    }

    .enrollment .card.enrollment_card ul li {
        margin-bottom: 2.5em
    }

    .enrollment .card.enrollment_card .enrollment_button_contain {
        padding: 1.875em 5em;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .enrollment .card.enrollment_card .enrollment_button_contain .column {
        width: 50%
    }

    .enrollment .card.enrollment_card .enrollment_button_contain .column p {
        width: 12em;
        margin-bottom: 0
    }
}

@media (min-width: 58em) {
    .enrollment .cards_contain {
        -ms-flex-wrap:nowrap;
        flex-wrap: nowrap
    }

    .enrollment .card.enrollment_card:not(:only-child):first-child {
        padding-top: 4.375em;
        z-index: 10;
        box-shadow: 0 5px 15px rgba(46,61,73,.2);
        margin-right: -2px;
        overflow-x: visible
    }

    .enrollment .card.enrollment_card:not(:only-child):first-child .ribbon {
        position: absolute;
        top: 10px;
        left: -5px;
        display: block;
        background: #02ccba;
        padding: 3px 10px;
        text-transform: uppercase;
        letter-spacing: 2px;
        font-size: .688em;
        font-weight: 600;
        color: #fff
    }

    .enrollment .card.enrollment_card:not(:only-child):first-child ul li {
        margin-bottom: 1.5em
    }

    .enrollment .card.enrollment_card:not(:only-child):first-child .guarantee {
        margin-bottom: 40px
    }

    .enrollment .card.enrollment_card:not(:only-child):first-child .enrollment_button_contain {
        padding: 2.75em
    }

    .enrollment .card.enrollment_card+.enrollment_card {
        margin-top: 0;
        margin-left: -2px
    }

    .enrollment .card.enrollment_card+.enrollment_card ul li {
        margin-bottom: 1.5em
    }

    .enrollment .card.enrollment_card+.enrollment_card .enrollment_button_contain {
        padding: 1.875em
    }
}

.page-ndop.nd010 #reviews,.page-ndop.nd010 .nd_stats>li:first-child,.page-ndop.nd011 #reviews,.page-ndop.nd011 .nd_stats>li:first-child {
    display: none!important
}

.nd_stats .nd_stars {
    background: url(/assets/images/icons/reviews-stars@2x.png) repeat-x;
    background-position: 0 -2px;
    background-size: 25px 70px;
    font-size: 0;
    height: 25px;
    line-height: 0;
    overflow: hidden;
    text-indent: 999em;
    width: 125px;
    display: block
}

.nd_stats .nd_stars .rating {
    background: url(/assets/images/icons/reviews-stars@2x.png) repeat-x;
    background-position: 0 -42px;
    background-size: 25px 70px;
    float: left;
    height: 25px
}

.nd_stats .nd_stars_link {
    font-size: 12px;
    text-decoration: none;
    border-bottom: none;
    color: #02b3e4
}

#reviews {
    clear: both
}

#reviews .outer_contain {
    background: #fafbfc
}

#reviews .contain {
    padding: 3.5em 1.5em
}

#reviews h2 {
    font-weight: 300;
    font-size: 1.75em;
    margin-bottom: .75em;
    text-align: center;
    color: #2e3d49
}

#reviews .centered {
    text-align: center;
    max-width: 43.75em;
    margin: 0 auto 2em;
    display: block;
    color: #757c81;
    font-size: .875em
}

@media (min-width: 35em) {
    #reviews h2 {
        font-size:2.125em
    }

    #reviews .contain {
        padding: 7.5em 1.5em
    }

    #reviews .centered {
        margin-bottom: 4em;
        font-size: 1em
    }
}

.reviews_contain {
    margin-bottom: .625em
}

.review-card,.stats {
    width: 100%;
    float: left
}

@media (min-width: 44em) {
    .review-card,.stats {
        width:33.33333%;
        float: left
    }
}

.stats {
    margin-bottom: 1.5em;
    padding-left: .625em
}

.reviews-avg {
    margin: 0 0 1.25em
}

.reviews-avg .reviews-avg-rating {
    font-size: 2.5em;
    display: inline-block;
    color: #2e3d49
}

.reviews-avg .reviews-avg-stars {
    margin-left: 15px;
    background: url(/assets/images/icons/reviews-stars@2x.png) repeat-x;
    background-size: 25px 70px;
    font-size: 0;
    height: 25px;
    line-height: 0;
    overflow: hidden;
    text-indent: 999em;
    width: 125px;
    display: inline-block
}

.reviews-avg .reviews-avg-stars .rating {
    background: url(/assets/images/icons/reviews-stars@2x.png) repeat-x;
    background-position: 0 -40px;
    background-size: 25px 70px;
    float: left;
    height: 25px
}

.reviews-avg .reviews-total-count {
    font-size: .875em;
    position: relative;
    bottom: .25em;
    color: #afafaf;
    margin-left: .625em
}

.reviews-overview {
    width: 85%
}

.reviews-overview .review-bar-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 10px
}

.reviews-overview .review-bar-wrapper .progress {
    margin: 0;
    width: 65%;
    background-color: #dbe2e8
}

.reviews-overview .review-bar-wrapper .progress-bar {
    background-color: #ecc81a;
    color: #fff;
    font-size: .75em;
    font-weight: 700;
    text-indent: 10px;
    text-align: left;
    height: 30px;
    line-height: 30px
}

.reviews-overview .review-bar-wrapper .left-label,.reviews-overview .review-bar-wrapper .right-label {
    letter-spacing: .5px;
    height: 30px;
    line-height: 30px;
    font-size: .75em;
    color: #afafaf;
    text-transform: uppercase;
    font-weight: 600;
    -webkit-font-smoothing: antialiased
}

.reviews-overview .review-bar-wrapper .left-label {
    width: 60px;
    color: #7e97ac
}

.reviews-overview .review-bar-wrapper .right-label {
    width: 40px;
    padding-left: 10px;
    text-align: left
}

.star {
    background: url(/assets/images/icons/reviews-stars@2x.png) 0 4px no-repeat;
    background-size: 75%;
    width: 18px;
    height: 18px;
    display: inline-block
}

.star.yellow {
    background-position: 0 -17px
}

.review-card-details {
    cursor: pointer;
    padding: 2.143em;
    position: relative;
    z-index: 1;
    background: #fff;
    margin: .625em;
    color: #2e3d49;
    border: 1px solid #dbe2e8;
    box-shadow: 0 2px 4px 0 rgba(46,60,73,.2);
    font-size: .875em;
    line-height: 1.5em
}

.review-card-details:after {
    width: 100%;
    height: 80px;
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    background: rgba(255,255,255,.5);
    background: linear-gradient(to bottom,rgba(255,255,255,0) 0,#fff 50%,#fff 100%)
}

@media (min-width: 44em) {
    .review-card-details {
        height:310px
    }
}

.review-card-head {
    height: 30px
}

.review-card-head .student-name {
    font-size: 1em;
    text-transform: capitalize;
    font-weight: 600;
    float: left;
    max-width: 40%;
    height: 25px;
    overflow: hidden;
    text-overflow: ellipsis
}

.review-card-head .student-stars {
    text-align: right;
    float: right
}

.review-card-head .glyphicon {
    color: #dcdcdc
}

.review-card-head .glyphicon.orange {
    color: #f08c35
}

.review-card-body {
    overflow: hidden;
    height: 10.3em
}

@media (min-width: 35em) {
    .review-card-body {
        overflow:hidden;
        height: 14em
    }
}

.review-card-body p {
    margin: 0;
    line-height: 1.5em
}

@media (min-width: 35em) {
    .review-card-body p {
        overflow:hidden;
        line-height: 2em
    }
}

.review-card-body .student-date {
    color: #afafaf;
    float: right;
    display: none;
    font-size: .75em;
    position: absolute;
    bottom: 30px;
    right: 30px;
    padding: 0;
    z-index: 5
}

@media (min-width: 44em) {
    .review-card-body .student-date {
        bottom:15px;
        display: block
    }
}

.pagination-contain {
    display: block
}

.pagination-contain .left-col {
    float: left;
    width: 50%
}

.pagination-contain .right-col {
    text-align: right
}

.pagination-contain .nextPage,.pagination-contain .prevPage {
    cursor: pointer;
    text-transform: uppercase;
    color: #02b3e4;
    font-weight: 600;
    letter-spacing: 0;
    font-size: .75em
}

.pagination-contain .nextPage.disabled,.pagination-contain .prevPage.disabled {
    color: #afafaf;
    pointer-events: none;
    cursor: not-allowed
}

@media (min-width: 44em) {
    .pagination-contain .nextPage,.pagination-contain .prevPage {
        font-size:.875em;
        letter-spacing: .2px
    }
}

.pagination-contain .prevPage:before {
    background: url(/assets/images/icons/reviews-arrows@2x.png) 10px -20px no-repeat;
    content: '';
    width: 30px;
    height: 10px;
    display: inline-block;
    background-size: 20px 80px
}

.pagination-contain .prevPage.disabled:before {
    background-position: 10px 0
}

.pagination-contain .nextPage:after {
    background: url(/assets/images/icons/reviews-arrows@2x.png) 8px -60px no-repeat;
    content: '';
    width: 30px;
    height: 10px;
    display: inline-block;
    background-size: 20px 80px
}

.pagination-contain .nextPage.disabled:after {
    background-position: 8px -40px
}

.ready {
    display: none
}

.review-link {
    display: block;
    text-decoration: none
}

.page-ndop>.remodal-wrapper .reviews_modal {
    padding: 2em 2.5em;
    text-align: left
}

.page-ndop>.remodal-wrapper .reviews_modal .student-name {
    float: left;
    width: 50%
}

.page-ndop>.remodal-wrapper .reviews_modal .student-stars {
    text-align: right
}

.page-ndop>.remodal-wrapper .reviews_modal p {
    padding: 0;
    font-size: .875em;
    line-height: 1.5em;
    margin-bottom: 2em
}

.page-ndop>.remodal-wrapper .reviews_modal .review-card-head {
    height: 2em
}

.page-ndop>.remodal-wrapper .reviews_modal .review-card-body {
    height: auto
}

.page-ndop>.remodal-wrapper .reviews_modal .student-date {
    bottom: 2em;
    right: 3.5em;
    display: block
}

@media (min-width: 44em) {
    .page-ndop>.remodal-wrapper .reviews_modal {
        padding:5em
    }

    .page-ndop>.remodal-wrapper .reviews_modal .review-card-body {
        height: auto
    }

    .page-ndop>.remodal-wrapper .reviews_modal .student-date {
        bottom: 1.875em;
        display: block
    }

    .page-ndop>.remodal-wrapper .reviews_modal p {
        line-height: 1.75em
    }
}

.hero_video {
    margin: 0 auto 3em;
    max-width: 40em
}

.hero_video .video_contain {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    cursor: pointer;
    z-index: 1000;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
}

.hero_video .video_contain embed,.hero_video .video_contain iframe,.hero_video .video_contain object,.hero_video .video_contain video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1001
}

.hero_video .video_contain img {
    float: left
}

.hero_video .video_contain .play_icon {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 1;
    display: inline-block;
    width: 5em;
    height: 5em;
    margin-left: .35em;
    transform: translate(-50%,-50%)
}

.hero_video .video_contain .play_icon::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    left: 40%;
    bottom: 15%;
    width: 55%;
    height: 0%;
    background: #02b3e4;
    transform: translateX(-50%) rotate(32deg);
    transition: height .5s ease-in-out
}

.hero_video .video_contain:hover .play_icon::before {
    height: 55%
}

.home_page h1 {
    color: #fff;
    position: relative;
    left: -.1em;
    font-size: 1.5em;
    font-weight: 300;
    line-height: 1.2;
    margin-bottom: .45em
}

.home_page h1 strong {
    font-size: 125%
}

.home_page p {
    color: #fafbfc;
    font-size: 1.07em;
    line-height: 1.4em;
    margin-bottom: 0
}

.home_page ul {
    list-style: none;
    padding-left: 0
}

.home_page ul.vertical {
    white-space: initial
}

.home_page ul.vertical>li {
    display: block
}

.course-cards .contain .home_page ul,.home_page .course-cards .contain ul,.home_page .media-cards .contain ul,.home_page .students-comments-cards .contain ul,.home_page ul.horizontal,.media-cards .contain .home_page ul,.students-comments-cards .contain .home_page ul {
    white-space: nowrap
}

.course-cards .contain .home_page ul>li,.home_page .course-cards .contain ul>li,.home_page .media-cards .contain ul>li,.home_page .students-comments-cards .contain ul>li,.home_page ul.horizontal>li,.media-cards .contain .home_page ul>li,.students-comments-cards .contain .home_page ul>li {
    display: inline-block
}

.course-cards .contain .home_page ul.scrollable,.home_page .course-cards .contain ul.scrollable,.home_page .media-cards .contain ul.scrollable,.home_page .students-comments-cards .contain ul.scrollable,.home_page ul.horizontal.scrollable,.media-cards .contain .home_page ul.scrollable,.students-comments-cards .contain .home_page ul.scrollable {
    overflow-x: auto
}

.home_page .btn-default {
    border: 1px solid #02b3e4;
    color: #2e3d49
}

.home_page .btn-default:focus,.home_page .btn-default:hover {
    border: 1px solid #028bb1;
    color: #fafbfc
}

.home_page .hero-form {
    max-width: 24em;
    margin: 2em auto 0
}

.home_page .hero-form .alert-error {
    color: #f95c3c
}

.home_page .hero-form .form-group {
    width: 100%;
    margin: 0 auto 1em
}

.home_page .hero-form .form-group.form-name input {
    width: 44%
}

.home_page .hero-form .form-group.form-name input:first-child {
    margin-right: 10%
}

.home_page .hero-form .form-group.form-email {
    background-color: #fff
}

.home_page .hero-form .form-group.form-email input:nth-child(2) {
    left: 0
}

.home_page .hero-form .form-group input {
    width: 100%
}

.home_page .hero-form .form-group input::-webkit-input-placeholder {
    opacity: .5
}

.home_page .hero-form .form-group input:-ms-input-placeholder {
    opacity: .5
}

.home_page .hero-form .form-group input::placeholder {
    opacity: .5
}

.home_page .hero-form .form-group input[type=email]::-webkit-input-placeholder {
    opacity: 1
}

.home_page .hero-form .form-group input[type=email]:-ms-input-placeholder {
    opacity: 1
}

.home_page .hero-form .form-group input[type=email]::placeholder {
    opacity: 1
}

.home_page .hero-form .form-group input[type=submit] {
    display: inline-block;
    max-width: 100%
}

.home_page .hero-form .form-group input[type=email].warning,.home_page .hero-form .form-group input[type=password].warning,.home_page .hero-form .form-group input[type=text].warning {
    border-color: #f04546;
    box-shadow: 0 0 .75em .25em rgba(240,69,70,.3)
}

.home_page .hero-form .form-group input[type=email].success,.home_page .hero-form .form-group input[type=password].success,.home_page .hero-form .form-group input[type=text].success {
    border-color: #15c26b;
    box-shadow: 0 0 .75em .25em rgba(21,194,107,.3)
}

.home_page .hero-form .disclaimer {
    padding: 0 1em
}

.home_page .hero-form .disclaimer p {
    font-size: 80%;
    color: #525c65;
    border-bottom: none
}

@media (min-width: 60em) {
    .home_page .hero-form {
        position:absolute;
        bottom: 6em;
        right: 2em
    }

    .home_page .hero-form .disclaimer p {
        color: #fff
    }

    .home_page .hero-form .disclaimer p a {
        color: #02b3e4;
        border-bottom: 1px solid #fff
    }
}

section {
    text-align: center;
    padding-bottom: 2.5em
}

section .title {
    display: block;
    max-width: 96%;
    color: #2e3d49;
    margin: 0 auto;
    padding: 1.8em 0 1.2em;
    font-size: 1.3em
}

section .indicator {
    display: inline-block;
    vertical-align: middle;
    color: #02b3e4;
    cursor: pointer;
    border: 2px solid;
    border-radius: 50%;
    padding: .275em .425em .1em
}

section .indicator .icon {
    vertical-align: middle;
    font-size: 1.275em
}

section .indicator .icon span {
    display: block;
    height: 0;
    width: 0;
    overflow: hidden
}

section .indicator.disabled {
    color: #c4c4b9!important
}

section .indicator.disabled .icon {
    color: #c4c4b9!important;
    border-color: #c4c4b9!important
}

section .secondary-card {
    display: none
}

@media (min-width: 30em) {
    section .title {
        font-size:2em
    }

    section .secondary-card {
        display: block
    }
}

@media (min-width: 45em) {
    section .indicator {
        display:none
    }
}

@media (min-width: 80em) {
    section .contain {
        max-width:1150px;
        margin: 0 auto
    }
}

.hero {
    position: relative;
    padding-bottom: 0
}

@media (min-width: 80em) {
    .hero {
        max-width:100%
    }
}

.hero .outer-contain {
    background-image: url(/assets/images/pages/homepage/homepage_hero.jpg) no-repeat;
    background-position: -180px top;
    background-size: cover
}

@media (min-width: 34em) {
    .hero .outer-contain {
        background-position:left top
    }
}

.hero .hero-content {
    padding: 18% 12% 10%
}

.hero p {
    display: inline-block;
    border-bottom: 2px solid #fff;
    padding-bottom: 1em
}

.hero .btn-group {
    display: block
}

.hero .btn-group .btn {
    font-size: 1.2em;
    width: inherit;
    padding: .89em 1.71em;
    margin: 1em
}

.hero .hero-text {
    float: left;
    margin-bottom: 3em;
    text-align: left
}

.hero .hero-text a {
    margin-top: 2em
}

.hero .hero-text .btn-link {
    font-size: 1em;
    width: inherit;
    background: 0 0;
    border-bottom: 1px solid #02b3e4;
    border-radius: 0;
    display: inline-block
}

@media (min-width: 25em) {
    .hero .hero-content {
        padding-left:0;
        padding-right: 0
    }

    .hero .btn-group,.hero .hero-text {
        padding-left: 3.125em
    }

    .hero .hero-text {
        float: left;
        margin-bottom: 3em
    }
}

@media (min-width: 30em) {
    .hero h1 {
        position:relative;
        left: -.1em;
        color: #fff;
        font-size: 1.9em;
        font-weight: 300;
        margin-bottom: .45em
    }

    .hero h1 strong {
        font-size: 122.222%
    }

    .hero p {
        color: #fafbfc;
        font-size: 1.1em;
        line-height: 1.5;
        margin-bottom: 0
    }

    .hero .btn-group,.hero .hero-text {
        padding-left: 3.125em
    }

    .hero .hero-text {
        float: none;
        margin-bottom: 3em
    }
}

.btn-group {
    margin-bottom: 2.5em;
    display: inline-block
}

.btn-group .btn {
    font-size: 1.2em;
    font-weight: 400;
    padding: .6em 1.6em;
    display: inline-block
}

.nanodegree-cards .nanodegree-card .card-content {
    position: relative
}

.nanodegree-cards .nanodegree-card .card-content .background {
    display: inline-block;
    background-color: #1c262f;
    line-height: 0
}

.nanodegree-cards .nanodegree-card .card-content .background img {
    opacity: .5
}

.nanodegree-cards .nanodegree-card .card-content .intro {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

.nanodegree-cards .nanodegree-card .card-content .intro h3 {
    color: #fff;
    font-size: 1.5em
}

.nanodegree-cards .nanodegree-card .card-content a {
    text-decoration: none
}

.nanodegree-cards .nanodegree-card.secondary-card .intro {
    background-color: transparent;
    position: static;
    transform: none
}

.nanodegree-cards .nanodegree-card .partners {
    width: 90%;
    height: 7em;
    margin: 1.5em auto;
    padding-bottom: 1.5em;
    border-bottom: 1px solid #f4f4ef
}

.nanodegree-cards .nanodegree-card .partners div {
    max-width: 44%;
    min-width: 44%;
    display: inline-block
}

.nanodegree-cards .nanodegree-card .partners div img {
    padding: 0 1em;
    vertical-align: middle
}

.nanodegree-cards .btn-link {
    font-size: 1.5em;
    color: #fff
}

.nanodegree-cards .btn-link h2 {
    margin: 0 0;
    font-size: 80%
}

@media (min-width: 45em) {
    .nanodegree-cards .contain ul {
        display:block;
        width: 100%;
        margin: 0 auto 3em;
        text-align: left
    }

    .nanodegree-cards .nanodegree-card {
        max-width: 27.5%;
        margin: 2em 2.65% 0;
        border: 1px solid #f4f4ef;
        box-shadow: 0 1.5px 0 #f4f4ef;
        display: inline-block;
        text-align: center
    }

    .nanodegree-cards .nanodegree-card.secondary-card .partners {
        margin-top: 0
    }

    .nanodegree-cards .nanodegree-card.secondary-card .intro {
        min-height: inherit;
        padding: 3em 0 2em
    }

    .nanodegree-cards .nanodegree-card.secondary-card .intro h3 {
        color: #02b3e4
    }

    .nanodegree-cards .btn-link {
        background-color: #02b3e4;
        border-color: #02b3e4
    }

    .nanodegree-cards .btn-link:focus,.nanodegree-cards .btn-link:hover {
        text-decoration: none;
        background-color: #028bb1;
        border-color: #028bb1;
        color: #fff
    }
}

.authority-cards {
    border-bottom: 1px solid #f4f4ef;
    border-top: 1px solid #f4f4ef
}

.authority-cards .title strong {
    font-size: 100%!important;
    border-bottom: 2px solid #02b3e4
}

.authority-cards .authority-card {
    display: inline-block;
    width: 22%;
    padding: 0 1em
}

@media (min-width: 30em) {
    .authority-cards {
        background:url(/assets/images/pages/homepage/authority-bg.png) no-repeat center;
        background-size: cover
    }

    .authority-cards .authority-card {
        border: 1px solid #f4f4ef;
        background-color: #fff;
        vertical-align: middle;
        margin: .5em .5em
    }

    .authority-cards .authority-card div {
        max-width: 75%;
        margin: 0 auto
    }
}

.advantage-cards p {
    color: #2e3d49;
    font-size: 1.25em
}

.advantage-cards .intro {
    margin: 2em 0
}

@media (min-width: 45em) {
    .advantage-cards {
        border-bottom:1px solid #f4f4ef
    }

    .advantage-cards ul {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        width: 90%;
        margin: 0 auto;
        -ms-flex-align: end;
        align-items: flex-end
    }

    .advantage-cards .advantage-card {
        -ms-flex-positive: 1;
        flex-grow: 1
    }

    .advantage-cards .cover {
        margin: 0 auto
    }
}

.students-comments-cards {
    background-color: #fafbfc
}

.students-comments-cards .contain ul {
    width: 70%;
    margin: 0 auto;
    display: inline-block;
    vertical-align: middle
}

.students-comments-cards .students-comments-card {
    background-color: #fff;
    padding: 1.3em 1.1em;
    margin: 0 auto;
    text-align: left;
    border: 1px solid #f4f4ef;
    box-shadow: 0 1.5px 0 #f4f4ef;
    width: 85%
}

.students-comments-cards .student h1 {
    color: #2e3d49;
    margin: .1em
}

.students-comments-cards .student div {
    display: inline-block
}

.students-comments-cards .student .avatar {
    width: 5em;
    vertical-align: middle
}

.students-comments-cards .student .avatar img {
    border-radius: 50%
}

.students-comments-cards .student .intro {
    vertical-align: middle;
    margin-left: .9em
}

.students-comments-cards .student .intro p {
    color: #02b3e4
}

.students-comments-cards .comment {
    margin-top: 1.2em
}

.students-comments-cards .comment p {
    white-space: initial;
    color: #2e3d49;
    font-size: .8em
}

@media (min-width: 45em) {
    .students-comments-cards .contain ul {
        display:-ms-flexbox;
        display: flex;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        width: 90%;
        margin: 0 auto
    }

    .students-comments-cards .students-comments-card {
        max-width: 30%;
        margin: 0 2%
    }

    .students-comments-cards .comment p {
        line-height: 1.6;
        font-size: 14px
    }
}

.media-cards .title {
    color: #fafbfc
}

.media-cards .contain {
    background: url(/assets/images/pages/homepage/media-bg.png) no-repeat center;
    background-size: cover;
    padding-bottom: 2em
}

.media-cards .contain ul {
    overflow-x: hidden;
    width: 90%;
    margin: 0 auto;
    display: inline-block;
    margin-top: 2em
}

.media-cards .media-card {
    margin: 0 2.5%;
    max-width: 45%
}

.media-cards .media-card a {
    text-decoration: none
}

.media-cards .comment {
    text-align: left
}

.media-cards .comment p {
    font-size: .8em;
    border-radius: 2px;
    padding: 1.2em .9em;
    white-space: initial;
    color: #2e3d49;
    background-color: #fff;
    min-height: 12em
}

.media-cards .comment .angle {
    width: .6em;
    margin: 0 auto;
    border-style: solid;
    border-width: .6em .6em 0;
    border-color: #fff transparent transparent transparent
}

.media-cards .avatar {
    height: 6em;
    width: 6em;
    margin: 2em auto 3em;
    display: block;
    background: #fff;
    border-radius: 50%
}

@media (min-width: 45em) {
    .media-cards .media-card {
        max-width:20%;
        margin: 0 2%
    }
}

.course-cards .contain ul {
    width: 68%;
    margin: 0 auto 2em;
    display: inline-block;
    vertical-align: middle
}

.course-cards .contain .indicator {
    text-align: center;
    color: #15c26b
}

.course-cards .contain .indicator span {
    border-color: #15c26b
}

.course-cards .course-card {
    border: 1px solid #f4f4ef;
    border-bottom: 3px solid #15c26b;
    width: 85%
}

.course-cards .course h2 {
    color: #2e3d49;
    margin-top: 1em
}

.course-cards .course .vendor {
    max-width: 8em;
    margin: 0 auto
}

.course-cards .course .btn-group {
    margin: 2em 0
}

.course-cards .btn-group .btn {
    font-size: 1.2em
}

.course-cards .btn-group.full-width {
    display: block;
    width: 100%
}

.course-cards .btn-group.full-width .btn {
    max-width: 100%;
    border-radius: initial
}

.course-cards .btn-group .btn-default {
    background-color: #15c26b;
    border-color: #15c26b;
    color: #fff
}

.course-cards .btn-group .btn-default:focus,.course-cards .btn-group .btn-default:hover {
    border-color: #15a86b;
    background-color: #15a86b;
    color: #fafbfc
}

.course-cards .btn-group .btn-primary {
    color: #15c26b;
    background-color: transparent;
    border-color: transparent
}

.course-cards .btn-group .btn-primary:focus,.course-cards .btn-group .btn-primary:hover {
    background-color: transparent;
    border-color: transparent;
    color: #15a86b
}

@media (min-width: 45em) {
    .course-cards .contain ul {
        display:-ms-flexbox;
        display: flex;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        width: 100%;
        margin: 0 auto
    }

    .course-cards .course-card {
        margin: 0 2%
    }

    .course-cards .btn-group.full-width {
        display: inline-block;
        width: inherit;
        margin: 3em 0
    }

    .course-cards .btn-group.full-width .btn {
        border-radius: 4px
    }

    .course-cards .btn-group .btn-default {
        border-color: #15c26b;
        background-color: transparent;
        color: #2e3d49
    }

    .course-cards .btn-group .btn-default:focus,.course-cards .btn-group .btn-default:hover {
        border-color: #15a86b;
        background-color: #fafbfc;
        color: #2e3d49
    }

    .course-cards .btn-group .btn-primary {
        color: #fff;
        background-color: #15c26b;
        border-color: #15c26b
    }

    .course-cards .btn-group .btn-primary:focus,.course-cards .btn-group .btn-primary:hover {
        background-color: #15a86b;
        border-color: #15a86b;
        color: #fff
    }
}

.qa-cards {
    display: none;
    background-color: #fafbfc;
    padding-top: 3em
}

.qa-cards h1,.qa-cards h3,.qa-cards p {
    color: #2e3d49
}

.qa-cards header {
    display: inline-block;
    width: 100%
}

.qa-cards header .title {
    padding: 0 0;
    float: left
}

.qa-cards ul {
    text-align: left
}

.qa-cards .contain {
    width: 70%
}

.qa-cards .contain .question {
    font-size: 1.45em;
    font-weight: 600;
    margin: 1em 0
}

.qa-cards .contain p {
    line-height: 2em;
    font-size: .8em
}

.qa-cards .btn {
    float: right
}

@media (min-width: 30em) {
    .qa-cards {
        display:block
    }
}

.messages {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.messages li {
    display: block;
    position: relative;
    margin-bottom: 1.9em;
    padding: 1em 1.5em;
    background: #91daee
}

.messages li:hover {
    opacity: 1
}

.messages li .close_banner {
    display: block;
    line-height: 0;
    position: absolute;
    top: 1.25em;
    right: 1em;
    width: .875em;
    height: .875em;
    opacity: .7;
    transition: opacity .3s ease
}

.messages li span {
    font-size: .875em;
    color: #fff
}

.messages li:last-child {
    margin-bottom: 0
}

.messages li.success {
    background: #15c26b
}

.messages li.warning {
    background: #ecc81a
}

.messages li.critical {
    background: #f04546
}

.page-ndhub .nanodegree_hero {
    text-align: center
}

.page-ndhub .nanodegree_hero .outer_contain {
    background: #f4f4ef url(/assets/images/svgs/bg_pattern_full.svg) no-repeat center;
    background-size: cover
}

.page-ndhub .nanodegree_hero .outer_contain .contain {
    padding: 3.5em 1.5em
}

.page-ndhub .nanodegree_hero h1 {
    font-weight: 300;
    font-size: 1.75em;
    margin-bottom: .25em;
    color: #2e3d49
}

.page-ndhub .nanodegree_hero h3 {
    color: #757c81;
    font-weight: 400;
    font-size: .8125em;
    margin-bottom: 0
}

.page-ndhub .nanodegree_hero .contain {
    padding: 0 1.5em
}

.page-ndhub .nanodegree_hero .hero_content {
    margin: -1.375em 0 1.75em
}

.page-ndhub .nanodegree_hero .hero_content .callout_btn {
    margin: 0 auto 3em
}

.page-ndhub .nanodegree_hero .hero_content p {
    max-width: 43.75em;
    line-height: 1.875em;
    color: #525c65;
    margin: 0 auto
}

.page-ndhub .nanodegree_hero .hero_content p:last-child {
    margin-bottom: 0
}

@media (min-width: 35em) {
    .page-ndhub .nanodegree_hero .outer_contain .contain {
        padding:7.5em 1.5em 6.25em
    }

    .page-ndhub .nanodegree_hero h1 {
        font-size: 2.5em
    }

    .page-ndhub .nanodegree_hero h3 {
        font-size: 1.125em
    }
}

@media (min-width: 44em) {
    .page-ndhub .nanodegree_hero .hero_content {
        margin:-1.375em 0 3.75em
    }
}

@media (min-width: 52em) {
    .page-ndhub .nanodegree_hero {
        text-align:left
    }

    .page-ndhub .nanodegree_hero .hero_content {
        float: left;
        width: 47.5%
    }

    .page-ndhub .nanodegree_hero .hero_content .callout_btn {
        margin: 0 0 4.615384615em
    }

    .page-ndhub .nanodegree_hero .hero_video {
        float: right;
        width: 47.5%;
        margin-top: -2.75em
    }
}

@media (min-width: 63em) {
    .page-ndhub .nanodegree_hero .hero_content {
        width:40%
    }

    .page-ndhub .nanodegree_hero .hero_video {
        width: 55%;
        margin-top: -6.25em
    }
}

.page-ndhub .nanodegree_how {
    clear: both
}

.page-ndhub .nanodegree_how .contain {
    padding: 3.5em 1.5em
}

@media (min-width: 35em) {
    .page-ndhub .nanodegree_how .contain {
        padding:7.5em 0
    }
}

.page-ndhub .nanodegree_how h2 {
    font-weight: 300;
    font-size: 1.75em;
    margin-bottom: 1.75em;
    text-align: center;
    color: #2e3d49
}

@media (min-width: 33em) {
    .page-ndhub .nanodegree_how h2 {
        font-size:2.5em
    }
}

.page-ndhub .nanodegree_how .works_list {
    list-style-type: none;
    margin: 0;
    padding: 0;
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-direction: column;
    flex-direction: column
}

@media (min-width: 70em) {
    .page-ndhub .nanodegree_how .works_list {
        -ms-flex-align:start;
        align-items: flex-start;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-direction: row;
        flex-direction: row
    }
}

.page-ndhub .nanodegree_how .works_list li {
    padding: 0;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%
}

@media (min-width: 70em) {
    .page-ndhub .nanodegree_how .works_list li {
        padding:0 .5em
    }
}

.page-ndhub .nanodegree_how .works_list h3 {
    color: #2e3d49;
    font-size: 1.125em;
    font-weight: 600;
    line-height: 1.5em
}

.page-ndhub .nanodegree_how .works_list p {
    color: #757c81;
    font-size: .875em;
    font-weight: 400;
    line-height: 1.5em;
    display: none
}

@media (min-width: 70em) {
    .page-ndhub .nanodegree_how .works_list p {
        display:block
    }
}

.page-ndhub .nanodegree_how .works_list img {
    padding-bottom: 1em
}

@media (min-width: 70em) {
    .page-ndhub .nanodegree_how .works_list img {
        padding-bottom:1.6em
    }
}

.page-ndhub .ndhub_list {
    position: relative
}

.page-ndhub .ndhub_list .outer-contain {
    background-color: #f4f4ef
}

.page-ndhub .ndhub_list .contain {
    padding: 5em 1.5em;
    text-align: center
}

.page-ndhub .ndhub_list .contain h2 {
    font-size: 2.125em;
    color: #2e3d49;
    font-weight: 300;
    margin-bottom: 30px
}

.page-ndhub .ndhub_list .contain p {
    font-size: 1.125em;
    color: #757c81
}

.page-ndhub .ndhub_list .contain p strong {
    font-weight: 600
}

.page-ndhub .ndhub_list .cards_contain {
    padding: 3em 0
}

@media (min-width: 35em) {
    .page-ndhub .ndhub_list .contain h2 {
        font-size:2.5em
    }
}

@media (min-width: 44em) {
    .page-ndhub .ndhub_list .outer_contain {
        padding-bottom:7.5em
    }
}

.page-ndhub .ndhub_list .nanodegree_card {
    height: 24.5em;
    position: relative;
    padding-bottom: 2em;
    background: #fff url(../images/nd-icons/thick/nd000.svg) no-repeat;
    background-size: 60%;
    background-position: 120% -10%
}

.page-ndhub .ndhub_list .nanodegree_card a {
    text-decoration: none
}

.page-ndhub .ndhub_list .nanodegree_card.nd000 {
    background-image: url(../images/nd-icons/thick/nd000.svg);
    background-position: 120% 10%;
    background-size: 65%
}

.page-ndhub .ndhub_list .nanodegree_card.nd001 {
    background-image: url(../images/nd-icons/thick/nd001.svg)
}

.page-ndhub .ndhub_list .nanodegree_card.nd002 {
    background-image: url(../images/nd-icons/thick/nd002.svg);
    background-size: 55%
}

.page-ndhub .ndhub_list .nanodegree_card.nd003 {
    background-image: url(../images/nd-icons/thick/nd003.svg);
    background-size: 55%
}

.page-ndhub .ndhub_list .nanodegree_card.nd004 {
    background-image: url(../images/nd-icons/thick/nd004.svg);
    background-size: 70%
}

.page-ndhub .ndhub_list .nanodegree_card.nd006 {
    background-image: url(../images/nd-icons/thick/nd006.svg);
    background-size: 55%
}

.page-ndhub .ndhub_list .nanodegree_card.nd007 {
    background-image: url(../images/nd-icons/thick/nd007.svg);
    background-size: 55%
}

.page-ndhub .ndhub_list .nanodegree_card.nd009 {
    background-image: url(../images/nd-icons/thick/nd009.svg);
    background-size: 55%
}

.page-ndhub .ndhub_list .nanodegree_card.nd010 {
    background-image: url(../images/nd-icons/thick/nd010.svg)
}

.page-ndhub .ndhub_list .nanodegree_card.nd011 {
    background-image: url(../images/nd-icons/thick/nd011.svg);
    background-size: 50%;
    background-position: 120% -30%
}

.page-ndhub .ndhub_list .nanodegree_card.nd020 {
    background-image: url(../images/nd-icons/thick/nd020.svg)
}

.page-ndhub .ndhub_list .nanodegree_card.nd030 {
    background-image: url(../images/nd-icons/thick/nd030.svg)
}

.page-ndhub .ndhub_list .nanodegree_card.nd801 {
    background-image: url(../images/nd-icons/thick/nd801.svg)
}

.page-ndhub .ndhub_list .nanodegree_card.nd802 {
    background-image: url(../images/nd-icons/thick/nd802.svg)
}

.page-ndhub .ndhub_list .nanodegree_card.nd803 {
    background-image: url(../images/nd-icons/thick/nd803.svg)
}

.page-ndhub .ndhub_list .nanodegree_card h2 {
    font-size: 1.375em;
    font-weight: 600;
    margin-bottom: .5em;
    line-height: 1.125em;
    color: #2e3d49
}

.page-ndhub .ndhub_list .nanodegree_card h2::before {
    content: "";
    position: absolute;
    top: -25%;
    left: -27px;
    width: .181818182em;
    height: 34px;
    background: #02b3e4
}

@media (min-width: 35em) {
    .page-ndhub .ndhub_list .nanodegree_card h2::before {
        left:-37px
    }
}

.page-ndhub .ndhub_list .nanodegree_card h3 {
    font-size: 1em;
    font-weight: 300;
    margin-bottom: 0
}

.page-ndhub .ndhub_list .nanodegree_card h4 {
    font-size: .8125em;
    font-weight: 600;
    margin-bottom: 1.5em;
    letter-spacing: 1.5px;
    color: #dbe2e8;
    text-transform: uppercase
}

.page-ndhub .ndhub_list .nanodegree_card .more {
    text-decoration: none;
    text-transform: uppercase;
    color: #02b3e4;
    display: inline-block;
    font-size: .8125em;
    font-weight: 600;
    margin-top: 10px;
    text-decoration: none;
    text-transform: uppercase
}

.page-ndhub .ndhub_list .nanodegree_card .desc {
    height: 140px
}

@media (min-width: 35em) {
    .page-ndhub .ndhub_list .nanodegree_card .desc {
        height:140px
    }
}

.page-ndhub .ndhub_list .nanodegree_card .co_created {
    position: relative;
    width: 100%;
    height: 87px;
    padding: 0;
    overflow: hidden
}

.page-ndhub .ndhub_list .nanodegree_card .co_created .partners img {
    height: 60px
}

.page-ndhub .ndhub_list .nanodegree_card .co_created ul li {
    -ms-flex-positive: 0;
    flex-grow: 0
}

.page-ndhub .ndhub_list .nanodegree_card .co_created::after {
    content: "";
    width: 1.5em;
    height: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
    background: linear-gradient(to right,rgba(255,255,255,0) 0,#fff 50%,#fff 100%)
}

.page-ndhub .ndhub_list .nanodegree_card .enroll_btn {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 0 1.5em 2em 1.5em
}

@media (min-width: 35em) {
    .page-ndhub .ndhub_list .nanodegree_card .enroll_btn {
        padding:0 2.125em 2.5em
    }
}

.page-ndhub .ndhub_list .nanodegree_card .enroll_btn .callout_btn {
    width: 200px
}

.page-ndhub .faq_teaser {
    clear: both
}

.page-ndhub .faq_teaser .contain {
    max-width: 54.25em;
    padding: 3.5em 1.5em
}

.page-ndhub .faq_teaser .faq_header {
    position: relative;
    margin-bottom: 5em;
    padding-right: 11.5625em
}

.page-ndhub .faq_teaser .faq_header h2 {
    font-size: 1.75em;
    font-weight: 300;
    line-height: 1.294117647em;
    color: #2e3d49;
    text-transform: uppercase
}

.page-ndhub .faq_teaser .faq_header .more_btn {
    width: 18.461538462em
}

@media (min-width: 35em) {
    .page-ndhub .faq_teaser .faq_header .more_btn {
        position:absolute;
        top: 0;
        right: 0;
        width: 18.461538462em
    }
}

.page-ndhub .faq_teaser ul {
    margin: 0;
    padding: 0
}

.page-ndhub .faq_teaser ul li {
    display: block;
    padding: 0;
    font-size: 1em;
    margin: 0 0 2em;
    padding-bottom: 2em
}

.page-ndhub .faq_teaser ul li:last-child {
    margin-bottom: 0
}

.page-ndhub .faq_teaser ul li::before {
    display: none
}

.page-ndhub .faq_teaser ul li h3 {
    font-weight: 600;
    color: #2e3d49;
    font-size: 1.125em;
    margin-bottom: 1em
}

@media (min-width: 35em) {
    .page-ndhub .faq_teaser ul li h3 {
        font-size:1.375em;
        line-height: 1.87em
    }
}

.page-ndhub .faq_teaser ul li p {
    font-size: 1em;
    line-height: 1.75em;
    color: #757c81
}

@media (min-width: 35em) {
    .page-ndhub .faq_teaser ul li p {
        font-size:1.125em;
        line-height: 1.875em
    }
}

.page-ndhub .faq_teaser ul li p:last-child {
    margin-bottom: 0
}

@media (min-width: 35em) {
    .page-ndhub .faq_teaser .faq_header {
        padding-right:16em
    }

    .page-ndhub .faq_teaser .faq_header h2 {
        font-size: 2.125em
    }

    .page-ndhub .faq_teaser .faq_header .more_btn {
        width: 18.461538462em
    }
}

@media (min-width: 44em) {
    .page-ndhub .faq_teaser .contain {
        padding:7.5em 1.5em
    }
}

.page-ndop .nd_intro .contain {
    position: relative;
    padding: 3.5em 1.5em 0
}

.page-ndop .nd_intro .outer_contain {
    margin-top: -5em;
    background: #fafbfc
}

.page-ndop .nd_intro .outer_contain .contain {
    padding: 3.5em 1.5em;
    padding: 8.25em 1.5em 3.5em
}

.page-ndop .nd_intro .nd_heading {
    text-align: center
}

.page-ndop .nd_intro .nd_heading h1 {
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: .45em;
    color: #2e3d49
}

.page-ndop .nd_intro .nd_heading .subtitle {
    color: #525c65;
    font-size: 1.125em;
    font-weight: 400;
    margin-bottom: 3em
}

.page-ndop .nd_intro .nd_heading .program {
    color: #7d97ad;
    text-transform: uppercase;
    font-size: .75em;
    font-weight: 600;
    margin-bottom: 1.75em;
    letter-spacing: 2px
}

.page-ndop .nd_intro .nd_heading .hero_video {
    margin-top: 1.5em;
    margin-bottom: 0
}

.page-ndop .nd_intro .nd_heading h5 {
    text-align: center
}

.page-ndop .nd_intro .nd_info {
    margin: 0 auto;
    max-width: 38.75em
}

.page-ndop .nd_intro .nd_info .left_col {
    margin-bottom: 1.875em
}

.page-ndop .nd_intro .nd_info p strong {
    font-weight: 600
}

.page-ndop .nd_intro .nd_info .btn_label {
    text-align: center;
    display: block;
    color: #7d97ad;
    font-size: .75em
}

.page-ndop .nd_intro .nd_info .callout_btn {
    margin: 0 auto 1em
}

@media (min-width: 40em) {
    .page-ndop .nd_intro .nd_info .callout_btn {
        margin:0 0 1em
    }
}

.page-ndop .nd_intro .nd_info .nd_stats {
    clear: both;
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-direction: column;
    flex-direction: column
}

@media (min-width: 35em) {
    .page-ndop .nd_intro .nd_info .nd_stats {
        -ms-flex-direction:row;
        flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.page-ndop .nd_intro .nd_info .nd_stats>li {
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-bottom: 1em
}

@media (min-width: 35em) {
    .page-ndop .nd_intro .nd_info .nd_stats>li {
        margin-bottom:1.5em;
        width: 33%
    }
}

.page-ndop .nd_intro .nd_info .nd_stats>li:first-child p {
    margin: 0;
    line-height: 1.5em
}

.page-ndop .nd_intro .nd_info .nd_stats>li:first-child h4 {
    margin-top: 7px
}

.page-ndop .nd_intro .nd_info .nd_stats>li h4 {
    letter-spacing: 2px;
    position: relative;
    display: inline-block
}

.page-ndop .nd_intro .nd_info h4 {
    font-size: .75em;
    font-weight: 600;
    margin-bottom: .5em;
    letter-spacing: 2px;
    color: #7d97ad;
    text-transform: uppercase
}

.page-ndop .nd_intro .nd_info h4 .tooltip {
    display: inline-block;
    left: 0;
    position: relative;
    top: .313em
}

.page-ndop .nd_intro .nd_info h4 .tooltip .nd-level {
    text-transform: capitalize
}

.page-ndop .nd_intro .nd_info h5 {
    font-style: italic;
    color: #2e3d49;
    font-size: 1.25em;
    font-weight: 400;
    margin: 0;
    text-align: center
}

.page-ndop .nd_intro .nd_info h3 {
    font-size: 1.125em;
    font-weight: 700;
    text-transform: uppercase;
    color: #2e3d49;
    margin: 0
}

.page-ndop .nd_intro .nd_info .disclaimer {
    text-align: center;
    font-size: .75em
}

.page-ndop .nd_intro .nd_info .enroll_btn {
    padding-top: 2em;
    text-align: center
}

.page-ndop .nd_intro .nd_info .freeTrial {
    margin-bottom: .8em
}

.page-ndop .nd_intro .nd_info .skill_level {
    list-style-type: none;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: .3em 0 0
}

.page-ndop .nd_intro .nd_info .skill_level li {
    float: left;
    width: 1.375em;
    margin: 0 0 2em
}

.page-ndop .nd_intro .nd_info .skill_level li span {
    text-indent: -999em;
    display: block;
    width: 1em;
    height: 1em;
    border: 2px solid #2e3d49;
    border-radius: 1em
}

.page-ndop .nd_intro .nd_info .skill_level.skill_beginner li:first-child span {
    background: #2e3d49
}

.page-ndop .nd_intro .nd_info .skill_level.skill_intermediate li:first-child span {
    background: #2e3d49
}

.page-ndop .nd_intro .nd_info .skill_level.skill_intermediate li:nth-child(2) span {
    background: #2e3d49
}

.page-ndop .nd_intro .nd_info .skill_level.skill_advanced li span {
    background: #2e3d49
}

.page-ndop .nd_intro .nd_info .nd_created {
    margin-bottom: 1em
}

@media (min-width: 23em) {
    .page-ndop .nd_intro .nd_info .nd_created {
        margin-bottom:1.5em
    }
}

.page-ndop .nd_intro .nd_info .nd_created .affiliates {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media (min-width: 35em) {
    .page-ndop .nd_intro .nd_info .nd_created .affiliates {
        -ms-flex-direction:row;
        flex-direction: row
    }
}

.page-ndop .nd_intro .nd_info .nd_created .affiliates li {
    -ms-flex-positive: 1;
    flex-grow: 1
}

.page-ndop .nd_intro .nd_info .nd_created .affiliate_icon {
    height: 80px
}

@media (min-width: 22em) {
    .page-ndop .nd_intro .nd_info .nd_created .affiliate_icon {
        max-width:7.5em;
        margin-right: 1.25em
    }
}

.page-ndop .nd_intro .nd_info .credit_callout {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 2.125em 2.125em 2.125em 8.5em
}

.page-ndop .nd_intro .nd_info .credit_callout p {
    font-size: 1.125em;
    color: #2e3d49;
    margin: 0
}

.page-ndop .nd_intro .nd_info .credit_callout::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 2.125em;
    width: 4.375em;
    height: 4.375em;
    background: url(../images/icons/credit.min.svg) no-repeat center;
    background-size: contain;
    transform: translateY(-50%)
}

@media (min-width: 40em) {
    .page-ndop .nd_intro .outer_contain {
        margin-top:-10.9375em
    }

    .page-ndop .nd_intro .outer_contain .contain {
        padding: 17.1875em 1.5em 7.5em
    }

    .page-ndop .nd_intro .nd_heading h1 {
        font-size: 2.5em
    }

    .page-ndop .nd_intro .nd_info .btn_wrapper {
        float: left;
        margin: 0 1.5em 0 0
    }

    .page-ndop .nd_intro .nd_info .callout_btn {
        width: 20em;
        margin-bottom: .75em
    }

    .page-ndop .nd_intro .nd_info h5 {
        text-align: left
    }

    .page-ndop .nd_intro .nd_info .disclaimer {
        float: left;
        width: 70%;
        margin-top: -.125em;
        text-align: left
    }

    .page-ndop .nd_intro .nd_info .nd_stats {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    .page-ndop .nd_intro .nd_info .nd_stats>li {
        -ms-flex-positive: 1;
        flex-grow: 1
    }

    .page-ndop .nd_intro .nd_info .nd_stats>li:last-child {
        margin-right: 0
    }
}

@media (min-width: 71.25em) {
    .page-ndop .nd_intro .nd_info {
        max-width:100%
    }

    .page-ndop .nd_intro .nd_info .left_col {
        float: left;
        width: 45%;
        margin-right: 10%
    }

    .page-ndop .nd_intro .nd_info .right_col {
        float: left;
        width: 45%
    }

    .page-ndop .nd_intro .nd_info .both_col {
        clear: both
    }
}

@media (min-width: 71.25em) {
    .page-ndop .nd_intro .nd_info .nd_stats>li {
        margin-bottom:0
    }
}

.page-ndop .nanodegree_details {
    margin-top: 0
}

.page-ndop .nanodegree_details .contain {
    padding: 0 1.5em
}

.page-ndop .nanodegree_details .heading {
    padding-bottom: 2em
}

.page-ndop .nanodegree_details .heading h2 {
    margin-bottom: .75em
}

.page-ndop .nanodegree_details .outer_contain {
    padding-top: 3.5em;
    padding-bottom: 3.5em;
    background: #f4f4ef
}

.page-ndop .nanodegree_details h2 {
    color: #2e3d49;
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: 1.5em
}

.page-ndop .nanodegree_details .scroll_card {
    height: 24em
}

@media (min-width: 35em) {
    .page-ndop .nanodegree_details .scroll_card {
        height:28em
    }
}

.page-ndop .nanodegree_details .scroll_card[data-has-course=true]::after {
    bottom: 160px
}

.page-ndop .nanodegree_details .scroll_card[data-has-course=false]::after {
    bottom: 0;
    height: 5.5em
}

.page-ndop .nanodegree_details .scroll_pane {
    max-height: 28em;
    height: 28em
}

@media (min-width: 35em) {
    .page-ndop .nanodegree_details .scroll_pane {
        max-height:32em;
        height: 32em
    }
}

.page-ndop .nanodegree_details .related_courses {
    display: block;
    position: absolute;
    padding: 1.75em 2.5em;
    background: #fafbfc;
    min-height: 10em;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 5
}

.page-ndop .nanodegree_details .related_courses p {
    margin-bottom: .5em
}

.page-ndop .nanodegree_details .scroll_card.project h3 {
    color: #7d97ad;
    letter-spacing: 2px;
    font-size: .75em
}

.page-ndop .nanodegree_details .scroll_card.project:before {
    top: 4em
}

@media (min-width: 35em) {
    .page-ndop .nanodegree_details h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .page-ndop .nanodegree_details .outer_contain {
        padding-top:7.5em;
        padding-bottom: 7.5em
    }
}

.page-ndop .cta_block {
    padding: 3.5em 1.5em;
    text-align: center
}

.page-ndop .cta_block .contain {
    max-width: 33.75em
}

.page-ndop .cta_block h3 {
    color: #525c65;
    font-size: 1.25em;
    font-style: italic;
    margin-bottom: 1.5em
}

.page-ndop .cta_block h2 {
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: .5em;
    color: #2e3d49
}

.page-ndop .cta_block p {
    margin-bottom: 2em
}

.page-ndop .cta_block .btn_center {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

@media (min-width: 30em) {
    .page-ndop .cta_block .btn_center {
        -ms-flex-direction:row;
        flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.page-ndop .cta_block .btn_wrapper {
    margin: 0 auto
}

.page-ndop .cta_block .btn_wrapper .btn_label {
    text-align: center;
    display: block;
    color: #7d97ad;
    font-size: .75em
}

.page-ndop .cta_block .callout_btn {
    width: 20em;
    margin-bottom: .75em
}

@media (min-width: 35em) {
    .page-ndop .cta_block h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .page-ndop .cta_block {
        padding:7.5em 1.5em
    }
}

.page-ndop .page-ndop>.remodal-wrapper .nd_details,.page-ndop .page-ndop>.remodal-wrapper .success_video {
    padding: 2em 2.5em;
    text-align: left
}

.page-ndop .page-ndop>.remodal-wrapper .nd_details h3,.page-ndop .page-ndop>.remodal-wrapper .success_video h3 {
    text-transform: uppercase;
    color: #7d97ad;
    font-size: .75em;
    letter-spacing: 2px;
    font-weight: 600;
    margin-bottom: .75em
}

.page-ndop .page-ndop>.remodal-wrapper .nd_details h2,.page-ndop .page-ndop>.remodal-wrapper .success_video h2 {
    color: #2e3d49;
    font-size: 1.375em;
    font-weight: 600;
    margin-bottom: 1.25em
}

.page-ndop .page-ndop>.remodal-wrapper .nd_details p,.page-ndop .page-ndop>.remodal-wrapper .success_video p {
    padding: 0;
    font-size: .875em;
    line-height: 1.5em
}

@media (min-width: 45em) {
    .page-ndop .page-ndop>.remodal-wrapper .nd_details,.page-ndop .page-ndop>.remodal-wrapper .success_video {
        padding:5em
    }
}

.page-ndop .page-ndop>.remodal-wrapper .success_video,.page-ndop .remodal-wrapper .success_video {
    text-align: left;
    max-width: 48.75em
}

.page-ndop .page-ndop>.remodal-wrapper .success_video .embed-container,.page-ndop .remodal-wrapper .success_video .embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%
}

.page-ndop .page-ndop>.remodal-wrapper .success_video .embed-container embed,.page-ndop .page-ndop>.remodal-wrapper .success_video .embed-container iframe,.page-ndop .page-ndop>.remodal-wrapper .success_video .embed-container object,.page-ndop .remodal-wrapper .success_video .embed-container embed,.page-ndop .remodal-wrapper .success_video .embed-container iframe,.page-ndop .remodal-wrapper .success_video .embed-container object {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.page-ndop .success_story_block .outer_contain {
    background: url(/assets/images/pages/ndop/Kelly-Marchisio_centered_2310x1230.jpg) top right no-repeat;
    background-position: -50em;
    background-size: cover
}

@media (min-width: 22em) {
    .page-ndop .success_story_block .outer_contain {
        background-position:-40em
    }
}

@media (min-width: 34em) {
    .page-ndop .success_story_block .outer_contain {
        background:url(/assets/images/pages/ndop/Kelly-Marchisio_Q70_2310x1230.jpg) no-repeat top center;
        background-size: cover
    }
}

.page-ndop .success_story_block .contain {
    position: relative;
    padding: 0 1.5em
}

.page-ndop .success_story_block h1 {
    color: #fff;
    font-weight: 300;
    font-size: 2.125em
}

.page-ndop .success_story_block .hired_by {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 0 1.5em 3.5em
}

.page-ndop .success_story_block .hired_by h3 {
    font-size: .8125em;
    font-weight: 600;
    color: #fff;
    letter-spacing: 2px;
    text-transform: uppercase
}

.page-ndop .success_story_block .hired_by .partners {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.page-ndop .success_story_block .hired_by .partners li {
    font-size: .65em;
    float: left;
    margin-right: 2em;
    margin-bottom: 1.5em;
    width: 8.125em
}

.page-ndop .success_story_block blockquote {
    max-width: 38.75em;
    padding: 10% 0 16.25em;
    margin: 0
}

.page-ndop .success_story_block cite {
    position: relative;
    display: inline-block;
    padding: 0 4em 0 0;
    font-style: normal
}

.page-ndop .success_story_block cite h4 {
    font-size: .75em;
    font-weight: 400;
    text-transform: uppercase;
    color: rgba(255,255,255,.6);
    margin-bottom: 1.5em;
    letter-spacing: 2px
}

.page-ndop .success_story_block cite h2 {
    font-size: 1.25em;
    font-weight: 600;
    color: #fff;
    margin-bottom: .25em
}

.page-ndop .success_story_block cite h3 {
    font-size: 1em;
    font-weight: 300;
    color: #fff;
    margin-bottom: 3em
}

.page-ndop .success_story_block cite .mobile-only {
    display: block
}

@media (min-width: 35em) {
    .page-ndop .success_story_block cite .mobile-only {
        display:none
    }
}

.page-ndop .success_story_block cite .desktop-only {
    display: none
}

@media (min-width: 35em) {
    .page-ndop .success_story_block cite .desktop-only {
        display:block
    }
}

.page-ndop .success_story_block cite .play_icon {
    position: absolute;
    right: 0;
    top: 8px;
    z-index: 1;
    display: inline-block;
    width: 4.75em;
    height: 4.75em
}

.page-ndop .success_story_block cite .play_icon::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    left: 40%;
    bottom: 20%;
    width: 55%;
    height: 0%;
    background: #02b3e4;
    transform: translateX(-50%) rotate(32deg);
    transition: height .5s ease-in-out
}

.page-ndop .success_story_block cite .play_icon:hover::before {
    height: 55%
}

.page-ndop .success_story_block p {
    color: #fff;
    font-style: italic;
    font-weight: 300;
    font-size: 1.25em;
    line-height: 1.75em;
    margin-bottom: 11.2903226%
}

@media (min-width: 43.75em) {
    .page-ndop .success_story_block p {
        font-size:1.5em
    }

    .page-ndop .success_story_block cite {
        padding: 0 7em 0 0
    }

    .page-ndop .success_story_block cite h2 {
        font-size: 1.5em
    }

    .page-ndop .success_story_block cite h3 {
        margin-bottom: 5em
    }

    .page-ndop .success_story_block cite .play_icon {
        top: 8px;
        width: 4.75em;
        height: 4.75em
    }

    .page-ndop .success_story_block .hired_by {
        padding: 0 1.5em 5.5em
    }

    .page-ndop .success_story_block .hired_by .partners li {
        font-size: .75em
    }
}

@media (min-width: 65em) {
    .page-ndop .success_story_block .hired_by {
        padding:0 1.5em 6.5em
    }

    .page-ndop .success_story_block .hired_by .partners li {
        font-size: 1em
    }
}

.page-ndop .requirements .contain {
    padding: 3.5em 1.5em;
    position: relative
}

.page-ndop .requirements a {
    color: #525c65;
    border-bottom: 1px solid #91daee;
    text-decoration: none;
    transition: color .3s ease 0s
}

.page-ndop .requirements a:hover {
    color: #24292d
}

.page-ndop .requirements h3 {
    font-weight: 600;
    color: #525c65
}

.page-ndop .requirements ol,.page-ndop .requirements ul {
    color: #525c65;
    line-height: 2em
}

.page-ndop .requirements ol li,.page-ndop .requirements ul li {
    padding: 0 0 0 1em
}

.page-ndop .requirements .more {
    line-height: 2em;
    min-height: 8em;
    max-height: 8em
}

@media (min-width: 44em) {
    .page-ndop .requirements .more {
        max-height:12em
    }
}

.page-ndop .requirements .more h3,.page-ndop .requirements .more p,.page-ndop .requirements .more ul {
    line-height: 2em;
    margin-bottom: 1em
}

.page-ndop .requirements .more li {
    line-height: 2em
}

.page-ndop .requirements .more+[data-readmore-toggle] {
    border-bottom: none;
    margin-top: 25px;
    width: auto;
    display: inline-block;
    font-size: .8125em;
    text-transform: uppercase;
    font-weight: 600;
    color: #02b3e4;
    text-decoration: none;
    transition: color .3s ease,background .3s ease
}

.page-ndop .requirements .more+[data-readmore-toggle]:hover {
    color: #028bb1;
    text-decoration: none
}

.page-ndop .requirements .fade::before {
    display: block;
    content: '';
    width: 90%;
    height: 5em;
    position: absolute;
    left: 1em;
    bottom: 5.5em;
    z-index: 1;
    background: rgba(255,255,255,.5);
    background: linear-gradient(to bottom,rgba(255,255,255,0) 0,#fff 100%)
}

@media (min-width: 44em) {
    .page-ndop .requirements .fade::before {
        left:10em;
        bottom: 8.5em;
        width: 80%
    }
}

@media (min-width: 44em) {
    .page-ndop .requirements .contain {
        padding:7.5em 10.5em
    }
}

.page-ndop .nd_requirements {
    max-width: 43.75em;
    margin: 0 auto;
    text-align: center
}

.page-ndop .nd_requirements h2 {
    color: #2e3d49;
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: 1.5em
}

.page-ndop .nd_requirements p {
    font-weight: 300;
    color: #525c65;
    margin-bottom: 1.5em
}

.page-ndop .nd_requirements .more_btn {
    margin: 0 auto
}

@media (min-width: 35em) {
    .page-ndop .nd_requirements h2 {
        font-size:2.125em
    }

    .page-ndop .nd_requirements p {
        margin-bottom: 3em
    }
}

.page-ndop .two_col {
    overflow: hidden
}

.page-ndop .two_col .col {
    padding-top: 3em
}

.page-ndop .two_col h3 {
    font-size: 1.375em;
    font-weight: 600;
    color: #525c65
}

@media (min-width: 60em) {
    .page-ndop .two_col .col {
        float:left;
        width: 45%;
        margin-right: 10%
    }

    .page-ndop .two_col .col:last-child {
        margin-right: 0
    }
}

.page-ndop .nd_free_courses {
    clear: both;
    padding-bottom: 3.5em
}

.page-ndop .nd_free_courses .contain {
    padding: 0 1.5em
}

.page-ndop .nd_free_courses h4 {
    clear: both;
    font-size: .8125em;
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: 1.75em;
    color: #7d97ad
}

@media (min-width: 44em) {
    .page-ndop .nd_free_courses {
        padding-bottom:7.5em
    }
}

.page-ndop .career_info_block .outer_contain {
    background: #f4f4ef
}

.page-ndop .career_info_block .contain {
    padding: 3.5em 1.5em
}

.page-ndop .career_info_block h2 {
    color: #2e3d49;
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: .75em;
    display: inline-block
}

.page-ndop .career_info_block form .input_contain {
    position: relative;
    float: left
}

.page-ndop .career_info_block form .zip {
    position: absolute;
    display: block;
    width: 1.5em;
    height: 1.5em;
    top: .5em;
    right: .5em;
    background: url(../images/icons/location.min.svg) center no-repeat;
    border: none;
    outline: 0;
    text-indent: -999em
}

.page-ndop .career_info_block .career_info {
    clear: right
}

.page-ndop .career_info_block .career_info h3 {
    color: #2e3d49;
    font-size: 1.75em;
    font-weight: 100
}

.page-ndop .career_info_block .career_info .card {
    position: relative;
    background: #fff;
    padding: 2em 2em 2em 1.5em;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12);
    margin-bottom: 2.5em;
    border-radius: 0;
    border: none;
    width: 100%;
    max-width: 100%
}

@media (min-width: 35em) {
    .page-ndop .career_info_block .career_info .card {
        padding:2em 1em
    }
}

.page-ndop .career_info_block .career_info .card.job_card {
    padding: 2em 2.5em
}

.page-ndop .career_info_block .career_info .card.job_card .job_info {
    min-height: 0
}

.page-ndop .career_info_block .salary_info .card {
    min-height: 18.5em;
    margin-bottom: 0
}

.page-ndop .career_info_block .salary_info h4 {
    font-size: .75em;
    color: #58646d;
    font-weight: 600;
    margin-bottom: .5em;
    text-transform: uppercase;
    letter-spacing: 2px
}

.page-ndop .career_info_block .salary_info h2 {
    color: #02ccba;
    font-size: 1.75em;
    font-weight: 300
}

.page-ndop .career_info_block .salary_info .average {
    padding-left: 37.2%
}

.page-ndop .career_info_block .salary_info .salary_graph {
    padding-top: 2.188em
}

.page-ndop .career_info_block .salary_info .salary_graph .min {
    float: left;
    padding-left: 2.1em
}

.page-ndop .career_info_block .salary_info .salary_graph .max {
    float: right;
    padding-right: 3em
}

.page-ndop .career_info_block .salary_info .salary_graph h4 {
    margin-top: 2.125em;
    color: #58646d
}

@media (min-width: 35em) {
    .page-ndop .career_info_block .salary_info .salary_graph .min {
        padding-left:4.2em
    }

    .page-ndop .career_info_block .salary_info .salary_graph .max {
        padding-right: 6em
    }
}

.page-ndop .career_info_block .salary_info .graph_visual {
    display: block;
    position: relative;
    clear: both;
    height: 3.5em;
    width: 95%;
    background: #dbe2e8
}

.page-ndop .career_info_block .salary_info .graph_visual:before {
    content: '';
    background: url(//s3-us-west-1.amazonaws.com/udacity-content/rebrand/images/icons/salary-pin.png) 0 0 no-repeat;
    display: block;
    width: .625em;
    height: 7.813em;
    position: absolute;
    left: 40%;
    bottom: -.625em;
    z-index: 5;
    background-size: 100%
}

.page-ndop .career_info_block .salary_info .graph_visual:after {
    content: '';
    background: url(//s3-us-west-1.amazonaws.com/udacity-content/rebrand/images/icons/salary-arrow-right.png) 0 0 no-repeat;
    display: inline-block;
    width: 2.25em;
    height: 5.5em;
    position: absolute;
    right: -1.625em;
    top: -1em;
    background-size: 100%;
    z-index: 4
}

.page-ndop .career_info_block .salary_info .graph_visual .graph_filler {
    position: absolute;
    top: -.594em;
    left: 10%;
    height: 4.75em;
    width: 80%;
    background: #02ccba;
    z-index: 1;
    box-shadow: 0 5px 10px 0 rgba(46,60,73,.1)
}

.page-ndop .career_info_block .salary_info p {
    margin-top: 2em;
    text-align: center;
    font-size: .875em
}

.page-ndop .career_info_block .more_btn {
    margin: 2em 0
}

.page-ndop .career_info_block .jobs_info .card {
    min-height: 8em
}

@media (min-width: 35em) {
    .page-ndop .career_info_block h2 {
        font-size:2.125em
    }

    .page-ndop .career_info_block .more_btn {
        margin-bottom: 3em
    }

    .page-ndop .career_info_block .career_info .card {
        padding: 3.75em;
        padding-bottom: .5em
    }

    .page-ndop .career_info_block .career_info .card.job_card {
        padding: 2em 3.125em
    }

    .page-ndop .career_info_block .salary_info h2 {
        font-size: 2.25em
    }
}

@media (min-width: 44em) {
    .page-ndop .career_info_block .contain {
        padding:7.5em 1.5em
    }

    .page-ndop .career_info_block form {
        position: absolute;
        bottom: .25em;
        right: 0
    }
}

@media (min-width: 65.875em) {
    .page-ndop .career_info_block .more_btn {
        margin-top:11em
    }

    .page-ndop .career_info_block .salary_info {
        float: right;
        width: 54%
    }

    .page-ndop .career_info_block .jobs_info {
        float: left;
        width: 46%;
        padding-right: 6em
    }
}

.page-ndop .why_nd {
    clear: both
}

.page-ndop .why_nd .contain {
    max-width: 66.75em;
    max-width: 66.75em;
    padding: 3.5em 1.5em
}

.page-ndop .why_nd h2 {
    font-weight: 300;
    font-size: 1.75em;
    margin-bottom: 1.75em;
    text-align: center;
    color: #2e3d49
}

.page-ndop .why_nd ul {
    margin-bottom: 1em
}

.page-ndop .why_nd ul li {
    color: #525c65;
    line-height: 2em;
    text-align: left
}

.page-ndop .why_nd .centered {
    text-align: center;
    max-width: 43.75em;
    margin: 0 auto 3em;
    display: block
}

@media (min-width: 35em) {
    .page-ndop .why_nd h2 {
        font-size:2.125em
    }

    .page-ndop .why_nd .centered {
        margin: 0 auto 5em
    }
}

@media (min-width: 44em) {
    .page-ndop .why_nd .contain {
        padding:7.5em 1.5em
    }
}

.page-ndop .centered_heading {
    position: relative;
    z-index: 2;
    text-align: center
}

.page-ndop .centered_heading .small_contain {
    padding: 3.5em 1.5em 0
}

.page-ndop .centered_heading h1 {
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: .45em;
    color: #2e3d49
}

.page-ndop .centered_heading h2 {
    color: #525c65;
    font-size: 1.125em;
    font-weight: 400;
    margin-bottom: 2em
}

.page-ndop .centered_heading h3 {
    color: #7d97ad;
    text-transform: uppercase;
    font-size: .75em;
    font-weight: 600;
    margin-bottom: 1.5em;
    padding-top: 2em
}

.page-ndop .centered_heading p {
    margin-bottom: 1.5em
}

.page-ndop .centered_heading .callout_btn {
    margin: 0 auto
}

@media (min-width: 35em) {
    .page-ndop .centered_heading h1 {
        font-size:2.5em
    }

    .page-ndop .centered_heading p {
        margin-bottom: 3em
    }

    .page-ndop .centered_heading h3 {
        padding-top: 4em;
        margin-bottom: 3.5em
    }
}

@media (min-width: 44em) {
    .page-ndop .centered_heading .small_contain {
        padding:7.5em 1.5em 0
    }
}

.page-ndop .get_hired_cards .contain {
    max-width: 67.25em;
    padding: 0 1.5em
}

.page-ndop .get_hired_cards .get_hired_card {
    position: relative;
    background: #fff;
    padding: 1.25em 1.5em 5em;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12);
    margin-bottom: 2.5em
}

.page-ndop .get_hired_cards .get_hired_card:last-child {
    margin-bottom: 0
}

.page-ndop .get_hired_cards .get_hired_card .card_content h2 {
    font-size: 1.5em;
    font-weight: 300;
    line-height: 1.25em;
    color: #2e3d49;
    margin-bottom: 1em
}

.page-ndop .get_hired_cards .get_hired_card .card_content h3 {
    font-size: 1.375em;
    font-weight: 600;
    color: #2e3d49;
    margin-bottom: .75em
}

.page-ndop .get_hired_cards .get_hired_card .card_content h4 {
    font-size: .875em;
    color: #7d97ad;
    font-weight: 400
}

.page-ndop .get_hired_cards .get_hired_card .card_content p {
    font-size: .8125em;
    color: #2e3d49;
    line-height: 1.5em;
    margin-bottom: 1em
}

.page-ndop .get_hired_cards .get_hired_card .card_content p:last-child {
    margin-bottom: 0
}

.page-ndop .get_hired_cards .get_hired_card .get_hired_card_link {
    position: absolute;
    display: block;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    background: #fafbfc;
    padding: 1.25em 1em;
    font-size: .8125em;
    text-transform: uppercase;
    font-weight: 600;
    color: #02b3e4;
    text-decoration: none;
    transition: color .3s ease,background .3s ease
}

.page-ndop .get_hired_cards .get_hired_card .get_hired_card_link:hover {
    color: #028bb1;
    background: #f7f8fa
}

@media (min-width: 38.75em) {
    .page-ndop .get_hired_cards .contain {
        display:-ms-flexbox;
        display: flex
    }

    .page-ndop .get_hired_cards .get_hired_card {
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: 46%;
        margin-right: 8%;
        margin-bottom: 0
    }

    .page-ndop .get_hired_cards .get_hired_card:last-child {
        margin-right: 0
    }
}

@media (min-width: 63em) {
    .page-ndop .get_hired_cards .get_hired_card {
        padding:2.5em 3em 6em
    }

    .page-ndop .get_hired_cards .get_hired_card .card_content h2 {
        font-size: 1.85em;
        margin-bottom: 1em
    }

    .page-ndop .get_hired_cards .get_hired_card .card_content p {
        font-size: 1em
    }

    .page-ndop .get_hired_cards .get_hired_card .get_hired_card_link {
        padding: 1.5em 1em
    }
}

@media (min-width: 74em) {
    .page-ndop .get_hired_cards .get_hired_card {
        padding:3.85em 4.375em 6em
    }

    .page-ndop .get_hired_cards .get_hired_card .card_content h2 {
        font-size: 2.125em
    }
}

.page-ndop .notify-modal form {
    text-align: left
}

.page-ndop .notify-modal label {
    display: block;
    margin-bottom: .5em
}

.page-ndop .notify-modal input[type=email],.page-ndop .notify-modal input[type=text] {
    width: 100%
}

.page-ndop .notify-modal p {
    padding: 0;
    margin: 1.5em 0 4em;
    font-size: .75em;
    color: #7d97ad
}

.page-ndop li {
    color: #525c65
}

.co_intro .contain {
    position: relative;
    padding: 3.5em 1.5em
}

.co_intro .co_content {
    margin-bottom: 2.5em
}

.co_intro .co_content h1 {
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: .35em;
    color: #2e3d49
}

.co_intro .co_content h3 {
    color: #525c65;
    font-size: 1.125em;
    font-weight: 400;
    margin-bottom: 2em
}

.co_intro .co_content p {
    color: #525c65;
    line-height: 2em
}

.co_intro .co_info .co_images {
    list-style-type: none;
    margin: 0 0 3.75em;
    padding: 0
}

.co_intro .co_info .co_images li {
    margin-bottom: 1.5em
}

.co_intro .co_info .co_images li a {
    overflow: hidden;
    display: block;
    width: 23.125em;
    max-width: 100%;
    margin: 0 auto;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
}

.co_intro .co_info .co_images li img {
    float: left
}

.co_intro .co_info .co_images li:last-child {
    margin-right: 0
}

.co_intro .co_info .co_stats {
    display: -ms-flexbox;
    display: flex;
    clear: both;
    list-style-type: none;
    margin: 0;
    padding: 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.co_intro .co_info .co_stats>li {
    -ms-flex-positive: 1;
    flex-grow: 1;
    float: left;
    width: 47.5%;
    margin-right: 5%;
    margin-bottom: 1.5em
}

.co_intro .co_info .co_stats>li h4 {
    position: relative;
    display: inline-block
}

.co_intro .co_info .co_stats>li:nth-child(2n) {
    margin-right: 0
}

.co_intro .co_info h4 {
    padding-right: 2.5em;
    font-size: .75em;
    font-weight: 600;
    margin-bottom: .5em;
    color: #7d97ad;
    text-transform: uppercase
}

.co_intro .co_info h4 .tooltip {
    position: absolute;
    top: -.25em;
    right: 0
}

.co_intro .co_info h3 {
    font-size: 1.125em;
    font-weight: 700;
    text-transform: uppercase;
    color: #2e3d49;
    margin: 0
}

.co_intro .co_info .skill_level {
    list-style-type: none;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: .125em 0 0
}

.co_intro .co_info .skill_level li {
    float: left;
    width: 1.375em;
    margin: 0
}

.co_intro .co_info .skill_level li span {
    text-indent: -999em;
    display: block;
    width: 1em;
    height: 1em;
    border: 2px solid #2e3d49;
    border-radius: 1em
}

.co_intro .co_info .skill_level.skill_beginner li:first-child span {
    background: #2e3d49
}

.co_intro .co_info .skill_level.skill_intermediate li:first-child span {
    background: #2e3d49
}

.co_intro .co_info .skill_level.skill_intermediate li:nth-child(2) span {
    background: #2e3d49
}

.co_intro .co_info .skill_level.skill_advanced li span {
    background: #2e3d49
}

.co_intro .co_info .co_created {
    margin-bottom: 3em
}

.co_intro .co_info .co_created .google {
    max-width: 122px
}

@media (min-width: 30em) {
    .co_intro .co_info .co_images li {
        margin-bottom:0;
        float: left;
        width: 47.5%;
        margin-right: 5%
    }
}

@media (min-width: 40em) {
    .co_intro .co_content {
        margin-bottom:2.5em
    }

    .co_intro .co_content h1 {
        font-size: 2.5em
    }

    .co_intro .co_info .co_stats {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    .co_intro .co_info .co_stats>li {
        width: auto;
        margin-right: 5%
    }

    .co_intro .co_info .co_stats>li:nth-child(2n) {
        margin-right: 5%
    }

    .co_intro .co_info .co_stats>li:last-child {
        margin-right: 0
    }
}

@media (min-width: 44em) {
    .co_intro .contain {
        padding:3.5em 1.5em 7.5em
    }
}

@media (min-width: 56em) {
    .co_intro .contain {
        padding-right:26.25em
    }

    .co_intro .co_info .co_images {
        position: absolute;
        top: 7.75em;
        right: 1.5em;
        width: 20em
    }

    .co_intro .co_info .co_images li {
        margin-bottom: 1.5em;
        float: none;
        width: 100%;
        margin-right: 0
    }
}

@media (min-width: 71.25em) {
    .co_intro .contain {
        padding-right:40em
    }

    .co_intro .co_content {
        margin-bottom: 4em
    }

    .co_intro .co_info {
        position: absolute;
        top: 7.75em;
        right: 1.5em;
        width: 33.75em
    }

    .co_intro .co_info .co_images {
        position: static;
        top: auto;
        right: auto;
        width: 100%
    }

    .co_intro .co_info .co_images li {
        float: left;
        width: 47.5%;
        margin-bottom: 0;
        margin-right: 5%
    }

    .co_intro .co_info .co_images li:last-child {
        margin-right: 0
    }

    .co_intro .co_info .co_stats {
        margin-bottom: 3.75em
    }

    .co_intro .co_info .co_stats>li {
        margin-bottom: 0
    }

    .co_intro .co_info .co_created {
        margin-bottom: 0
    }
}

.course_details {
    margin-top: 0
}

.course_details .outer_contain {
    padding-top: 3.5em;
    background: #f4f4ef
}

.course_details h2 {
    color: #2e3d49;
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: 1.5em
}

.course_details .scroll_pane {
    margin-bottom: 3.5em
}

@media (min-width: 35em) {
    .course_details h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .course_details .outer_contain {
        padding-top:7.5em
    }
}

.course_requirements {
    max-width: 40em;
    margin: 0 auto;
    text-align: center
}

.course_requirements h2 {
    color: #2e3d49;
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: 1.5em
}

.course_requirements p {
    font-weight: 300;
    color: #525c65;
    margin-bottom: 1.5em
}

.course_requirements .more_btn {
    margin: 0 auto
}

@media (min-width: 35em) {
    .course_requirements h2 {
        font-size:2.125em
    }

    .course_requirements p {
        margin-bottom: 3em
    }
}

.why_block .contain {
    padding: 3.5em 1.5em
}

.why_block h2 {
    font-size: 1.75em;
    font-weight: 300;
    color: #2e3d49;
    margin-bottom: 1.294117647em
}

.why_block p {
    color: #525c65;
    line-height: 2em;
    margin-bottom: 2em
}

.why_block .what_list {
    padding-top: 3em
}

.why_block .what_list h4 {
    font-size: .75em;
    font-weight: 600;
    text-transform: uppercase;
    color: #2e3d49;
    margin-bottom: 2.5em
}

.why_block .what_list ul {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.why_block .what_list ul li {
    position: relative;
    color: #525c65;
    margin-bottom: 1.5em;
    padding-left: 2.5em
}

.why_block .what_list ul li:last-child {
    margin-bottom: 0
}

.why_block .what_list ul li::before {
    content: "";
    position: absolute;
    top: .125em;
    left: 0;
    width: 1.25em;
    height: 1.25em;
    background: #15c26b url(/assets/images/svgs/check_white.min.svg) no-repeat center;
    background-size: 70%;
    border-radius: 1em
}

@media (min-width: 35em) {
    .why_block h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .why_block .contain {
        padding:7.5em 1.5em
    }
}

@media (min-width: 56em) {
    .why_block .contain {
        position:relative;
        padding-right: 26.25em
    }

    .why_block .what_list {
        position: absolute;
        top: 10.5em;
        right: 1.5em;
        width: 20em
    }
}

@media (min-width: 71.25em) {
    .why_block .contain {
        padding-right:30.625em
    }

    .why_block .what_list {
        width: 24.375em
    }
}

.nanodegree_steps {
    text-align: center
}

.nanodegree_steps .contain {
    max-width: 42em;
    padding: 3.5em 1.5em
}

.nanodegree_steps h2 {
    font-size: 1.75em;
    font-weight: 300;
    color: #2e3d49;
    margin-bottom: 1.294117647em
}

.nanodegree_steps p {
    color: #525c65;
    line-height: 2em;
    margin-bottom: 2em
}

.nanodegree_steps .callout_btn {
    margin: 3.5em auto 0
}

.nanodegree_steps .steps {
    position: relative;
    overflow: hidden;
    list-style-type: none;
    margin: 0 0 3.75em;
    padding: 0
}

.nanodegree_steps .steps::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    z-index: -1;
    width: 100%;
    height: .25em;
    background: #dbe2e8;
    transform: translateY(-50%)
}

.nanodegree_steps .steps li {
    position: relative;
    float: left;
    width: 11%
}

.nanodegree_steps .steps li span {
    display: block;
    width: 1.25em;
    height: 1.25em;
    border: 2px solid #fff;
    background: #dbe2e8;
    border-radius: 50%;
    margin: 0 auto
}

.nanodegree_steps .steps li span.checked {
    background: #7d97ad url(//s3-us-west-1.amazonaws.com/udacity-content/rebrand/svg/icons/check_white.svg) no-repeat center;
    background-size: 70%
}

.nanodegree_steps .steps li span.checked::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    top: 50%;
    width: 50%;
    height: .25em;
    background: #7d97ad;
    transform: translateY(-50%)
}

@media (min-width: 30em) {
    .nanodegree_steps .steps::before {
        height:.5625em
    }

    .nanodegree_steps .steps li span {
        width: 2em;
        height: 2em
    }

    .nanodegree_steps .steps li span.checked::before {
        height: .5625em
    }
}

@media (min-width: 35em) {
    .nanodegree_steps h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .nanodegree_steps .contain {
        padding:7.5em 1.5em
    }

    .nanodegree_steps .steps li span {
        width: 2.5em;
        height: 2.5em
    }
}

@media (min-width: 70em) {
    .nanodegree_steps {
        text-align:left
    }

    .nanodegree_steps .contain {
        position: relative;
        max-width: 75em;
        padding: 8.5em 23.75em 8.5em 1.5em
    }

    .nanodegree_steps .callout_btn {
        margin: 0
    }

    .nanodegree_steps .steps li {
        width: 10%
    }

    .nanodegree_steps .nd_slider {
        position: absolute;
        top: 7em;
        right: 1.5em;
        width: 23.75em
    }
}

.nd_slider {
    position: relative;
    text-align: left;
    max-width: 30em;
    padding-bottom: 4em;
    margin: 0 auto
}

.nd_slider .card {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin-right: 0
}

.nd_slider .card::before {
    content: "";
    width: 96%;
    height: 3em;
    position: absolute;
    z-index: -1;
    bottom: -.6em;
    left: 2%;
    border: 1px solid #dbe2e8;
    background: #fff;
    border-radius: .1875em;
    box-shadow: 0 .125em .25em 0 rgba(46,61,73,.12)
}

.nd_slider .slides {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.nd_slider .slides.single_card .card::before {
    display: none
}

.nd_slider .flex-direction-nav {
    display: none
}

.nd_slider .flex-control-nav {
    position: absolute;
    z-index: 10;
    text-align: center;
    bottom: .5em;
    left: 50%;
    list-style-type: none;
    display: block;
    margin: 0;
    padding: 0;
    transform: translateX(-50%)
}

.nd_slider .flex-control-nav li {
    cursor: pointer;
    display: inline-block;
    margin: 0 .25em
}

.nd_slider .flex-control-nav li a {
    cursor: pointer;
    display: block;
    text-indent: -999em;
    width: .875em;
    height: .875em;
    border-radius: 50%;
    background: #dbe2e8;
    transition: background .3s ease
}

.nd_slider .flex-control-nav li a.flex-active {
    background: #7d97ad
}

.free_courses_hero .outer_contain {
    background: #f4f4ef
}

.free_courses_hero .contain {
    position: relative;
    padding: 3.5em 1.5em 12em
}

.free_courses_hero.compact .contain {
    padding: 4.25em 1.5em 5.625em
}

.free_courses_hero .breadcrumbs {
    margin-bottom: 0
}

.free_courses_hero h2 {
    font-weight: 300;
    color: #2e3d49;
    font-size: 2em;
    margin-bottom: 1em
}

.free_courses_hero p {
    margin-bottom: 2.5em;
    max-width: 42.5em
}

.free_courses_hero form {
    margin-bottom: 1.5em
}

@media (min-width: 44em) {
    .free_courses_hero .contain {
        padding:7.5em 17.5em 13em 1.5em
    }

    .free_courses_hero h2 {
        font-size: 2.5em
    }

    .free_courses_hero form {
        position: absolute;
        top: 7.85em;
        right: 1.5em;
        width: 13.75em
    }
}

.free_courses_filter .contain {
    padding: 0 1.5em
}

.free_courses_teaser {
    margin-top: -10.6em
}

.free_courses_teaser .cards_contain {
    margin-bottom: 1.75em;
    -ms-flex-pack: distribute;
    justify-content: space-around
}

.free_courses_teaser .callout_btn {
    margin: 0 auto
}

@media (min-width: 44em) {
    .free_courses_teaser .cards_contain {
        margin-bottom:3.75em
    }
}

.categories_block .outer_contain,.site_map_block .outer_contain {
    background: #fafbfc;
    margin-bottom: 1.5em
}

.categories_block .contain,.site_map_block .contain {
    padding: 3.5em 1.5em
}

.categories_block h2,.site_map_block h2 {
    font-size: 1.75em;
    font-weight: 300;
    color: #2e3d49;
    margin-bottom: 1.25em
}

.categories_block .categories,.categories_block .site_map,.site_map_block .categories,.site_map_block .site_map {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.categories_block .categories>li,.categories_block .site_map>li,.site_map_block .categories>li,.site_map_block .site_map>li {
    padding: 1.75em 0 .75em;
    border-top: 1px solid #dbe2e8
}

.categories_block .categories>li h3,.categories_block .site_map>li h3,.site_map_block .categories>li h3,.site_map_block .site_map>li h3 {
    font-weight: 600;
    font-size: 1.125em;
    margin-bottom: 1.75em
}

.categories_block .categories>li h3 a,.categories_block .site_map>li h3 a,.site_map_block .categories>li h3 a,.site_map_block .site_map>li h3 a {
    color: #02b3e4;
    text-decoration: none;
    transition: color .3s ease
}

.categories_block .categories>li h3 a:hover,.categories_block .site_map>li h3 a:hover,.site_map_block .categories>li h3 a:hover,.site_map_block .site_map>li h3 a:hover {
    color: #01647f
}

.categories_block .pages,.categories_block .subjects,.site_map_block .pages,.site_map_block .subjects {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.categories_block .pages li,.categories_block .subjects li,.site_map_block .pages li,.site_map_block .subjects li {
    width: 100%;
    height: 4.357142857em;
    margin-bottom: 1.5em;
    font-size: .875em;
    text-align: center;
    background: #fff;
    border: 1px solid #dbe2e8;
    border-radius: .142857143em;
    box-shadow: 0 .1em .125em 0 rgba(46,61,73,.08);
    transition: box-shadow .3s ease,color .3s ease,border .3s ease
}

.categories_block .pages li:hover,.categories_block .subjects li:hover,.site_map_block .pages li:hover,.site_map_block .subjects li:hover {
    box-shadow: 0 .2em 1.115em 0 rgba(46,61,73,.1);
    border: 1px solid #bcc9d4
}

.categories_block .pages li a,.categories_block .subjects li a,.site_map_block .pages li a,.site_map_block .subjects li a {
    position: relative;
    display: block;
    height: 100%;
    color: #2e3d49;
    text-decoration: none
}

.categories_block .pages li a span,.categories_block .subjects li a span,.site_map_block .pages li a span,.site_map_block .subjects li a span {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    padding: 0 .5em;
    transform: translateY(-50%)
}

.categories_block .pages li a:hover,.categories_block .subjects li a:hover,.site_map_block .pages li a:hover,.site_map_block .subjects li a:hover {
    color: #07090a
}

@media (min-width: 30em) {
    .categories_block .pages li,.categories_block .subjects li,.site_map_block .pages li,.site_map_block .subjects li {
        float:left;
        width: 47.5%;
        margin-right: 5%
    }

    .categories_block .pages li:nth-child(2n),.categories_block .subjects li:nth-child(2n),.site_map_block .pages li:nth-child(2n),.site_map_block .subjects li:nth-child(2n) {
        margin-right: 0
    }
}

@media (min-width: 35em) {
    .categories_block h2,.site_map_block h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .categories_block .contain,.site_map_block .contain {
        padding:7.5em 1.5em
    }

    .categories_block .categories>li,.categories_block .site_map>li,.site_map_block .categories>li,.site_map_block .site_map>li {
        padding: 3.75em 0 2.75em
    }
}

@media (min-width: 48.75em) {
    .categories_block .pages li,.categories_block .subjects li,.site_map_block .pages li,.site_map_block .subjects li {
        width:31%;
        margin-right: 3.5%
    }

    .categories_block .pages li:nth-child(2n),.categories_block .subjects li:nth-child(2n),.site_map_block .pages li:nth-child(2n),.site_map_block .subjects li:nth-child(2n) {
        margin-right: 3.5%
    }

    .categories_block .pages li:nth-child(3n),.categories_block .subjects li:nth-child(3n),.site_map_block .pages li:nth-child(3n),.site_map_block .subjects li:nth-child(3n) {
        margin-right: 0
    }
}

@media (min-width: 63.75em) {
    .categories_block .pages li,.categories_block .subjects li,.site_map_block .pages li,.site_map_block .subjects li {
        width:23.5%;
        margin-right: 2%
    }

    .categories_block .pages li:nth-child(2n),.categories_block .pages li:nth-child(3n),.categories_block .subjects li:nth-child(2n),.categories_block .subjects li:nth-child(3n),.site_map_block .pages li:nth-child(2n),.site_map_block .pages li:nth-child(3n),.site_map_block .subjects li:nth-child(2n),.site_map_block .subjects li:nth-child(3n) {
        margin-right: 2%
    }

    .categories_block .pages li:nth-child(4n),.categories_block .subjects li:nth-child(4n),.site_map_block .pages li:nth-child(4n),.site_map_block .subjects li:nth-child(4n) {
        margin-right: 0
    }
}

@media (min-width: 73em) {
    .categories_block .categories>li,.categories_block .site_map>li,.site_map_block .categories>li,.site_map_block .site_map>li {
        overflow:hidden
    }

    .categories_block .categories>li h3,.categories_block .site_map>li h3,.site_map_block .categories>li h3,.site_map_block .site_map>li h3 {
        float: left;
        width: 21%;
        padding-right: 1em;
        line-height: 3.333333333em;
        margin: 0
    }

    .categories_block .pages,.categories_block .subjects,.site_map_block .pages,.site_map_block .subjects {
        float: left;
        width: 79%
    }
}

.fc_category_intro .contain {
    position: relative;
    padding: 0 1.5em
}

.fc_category_intro h1 {
    font-size: 2em;
    font-weight: 300;
    color: #2e3d49;
    margin-bottom: 1.25em
}

.fc_category_intro h2 {
    font-size: 1.75em;
    font-weight: 300;
    color: #2e3d49;
    margin-bottom: 1em
}

.fc_category_intro p {
    max-width: 42.5em
}

.fc_category_intro .jump_links {
    list-style-type: none;
    margin: 0;
    padding: 1.25em 0 1.5em
}

.fc_category_intro .jump_links li {
    display: block;
    color: #02b3e4;
    font-size: .75em
}

.fc_category_intro .jump_links li a {
    display: block;
    padding: .5em 0;
    text-decoration: none;
    color: #02b3e4;
    text-transform: uppercase;
    transition: color .3s ease
}

.fc_category_intro .jump_links li a:hover {
    color: #01647f
}

.fc_category_intro .filters_applied {
    margin-bottom: 3em
}

.fc_category_intro .filters_applied .filters {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.fc_category_intro .filters_applied .filters li {
    cursor: pointer;
    position: relative;
    float: left;
    display: block;
    padding: .5em 2em .5em .75em;
    background: rgba(145,218,238,.3);
    color: #7d97ad;
    font-size: .75em;
    text-transform: uppercase;
    border-radius: .166666667em;
    margin-right: .75em
}

.fc_category_intro .filters_applied .filters li .clear {
    position: absolute;
    top: 50%;
    right: .75em;
    width: .75em;
    height: .75em;
    opacity: .5;
    line-height: 0;
    transform: translateY(-50%);
    transition: opacity .3s ease
}

.fc_category_intro .filters_applied .filters li:hover .clear {
    opacity: .8
}

.fc_category_intro .filters_applied a {
    font-size: .75em;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
    display: inline-block;
    padding: .5em;
    color: #02b3e4;
    transition: color .3s ease
}

.fc_category_intro .filters_applied a:hover {
    color: #01647f
}

.fc_category_intro .view_toggle {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden
}

.fc_category_intro .view_toggle li {
    cursor: pointer;
    float: left;
    width: 1.25em;
    height: 1.25em;
    margin-right: 1em;
    opacity: .5;
    transition: opacity .3s ease
}

.fc_category_intro .view_toggle li:last-child {
    margin-right: 0
}

.fc_category_intro .view_toggle li:hover {
    opacity: .7
}

.fc_category_intro .view_toggle li.active {
    opacity: 1
}

.fc_category_intro .view_toggle li.active:hover {
    opacity: 1
}

@media (min-width: 35em) {
    .fc_category_intro h1 {
        font-size:2.5em
    }
}

@media (min-width: 45em) {
    .fc_category_intro .contain {
        padding-right:7em
    }

    .fc_category_intro .jump_links {
        overflow: hidden;
        padding-bottom: 0
    }

    .fc_category_intro .jump_links li {
        float: left
    }

    .fc_category_intro .jump_links li::after {
        content: "|";
        margin: 0 .5em
    }

    .fc_category_intro .jump_links li:last-child::after {
        display: none
    }

    .fc_category_intro .jump_links li a {
        display: inline
    }

    .fc_category_intro .filters_applied {
        margin-bottom: 0
    }

    .fc_category_intro .view_toggle {
        position: absolute;
        top: 2.75em;
        right: 1.5em
    }
}

.category_block,.partner_course_block {
    padding: 3.5em 0 1.5em
}

.category_block .contain,.partner_course_block .contain {
    padding: 0 1.5em
}

.category_block .heading,.partner_course_block .heading {
    margin-bottom: 2.5em
}

.category_block .heading h2,.partner_course_block .heading h2 {
    font-weight: 300;
    font-size: 1.75em;
    margin-bottom: .5em;
    color: #2e3d49
}

.category_block .subject,.partner_course_block .subject {
    font-size: 1.125em;
    margin-bottom: 1.5em;
    font-weight: 600
}

.category_block .subject a,.partner_course_block .subject a {
    color: #02b3e4;
    text-decoration: none;
    transition: color .3s ease
}

.category_block .subject a:hover,.partner_course_block .subject a:hover {
    color: #01647f
}

.category_block .course_list,.partner_course_block .course_list {
    position: relative;
    z-index: 2;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.category_block .course_list li,.partner_course_block .course_list li {
    width: 100%;
    margin-bottom: 2em
}

.category_block .course_list li .card,.partner_course_block .course_list li .card {
    width: 100%;
    max-width: 100%;
    margin-right: 0
}

.category_block .nanodegree_feature,.partner_course_block .nanodegree_feature {
    text-align: center;
    position: relative;
    z-index: 1;
    margin-top: -5.75em
}

.category_block .nanodegree_feature .outer_contain,.partner_course_block .nanodegree_feature .outer_contain {
    background: #fafbfc
}

.category_block .nanodegree_feature .contain,.partner_course_block .nanodegree_feature .contain {
    padding: 7em 1.5em 3.5em;
    max-width: 65.625em
}

.category_block .nanodegree_feature h2.feature_heading,.partner_course_block .nanodegree_feature h2.feature_heading {
    font-size: 1.75em;
    font-weight: 300;
    color: #2e3d49;
    margin-bottom: 1.25em
}

.category_block .nanodegree_feature p,.partner_course_block .nanodegree_feature p {
    margin-bottom: 2em
}

.category_block .nanodegree_feature .card,.partner_course_block .nanodegree_feature .card {
    min-height: 21.3125em
}

.category_block .list_layout a,.partner_course_block .list_layout a {
    text-decoration: none;
    display: block;
    overflow: hidden;
    padding: 2.5em 0 0;
    min-height: 12.5em;
    border-top: 1px solid #dbe2e8
}

.category_block .list_layout a .course_image,.partner_course_block .list_layout a .course_image {
    display: none
}

.category_block .list_layout a .course_info h2,.partner_course_block .list_layout a .course_info h2 {
    font-size: 1.5em;
    color: #2e3d49;
    margin-bottom: 1em
}

.category_block .list_layout a .course_info p,.partner_course_block .list_layout a .course_info p {
    margin-bottom: 2em
}

.category_block .list_layout a .course_stats,.partner_course_block .list_layout a .course_stats {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.category_block .list_layout a .course_stats>li,.partner_course_block .list_layout a .course_stats>li {
    float: left;
    width: 47.5%;
    margin-right: 5%;
    margin-bottom: 1.5em
}

.category_block .list_layout a .course_stats>li h4,.partner_course_block .list_layout a .course_stats>li h4 {
    position: relative;
    display: block;
    font-size: .75em;
    font-weight: 600;
    margin-bottom: .5em;
    color: #7d97ad;
    text-transform: uppercase
}

.category_block .list_layout a .course_stats>li h3,.partner_course_block .list_layout a .course_stats>li h3 {
    font-size: 1.125em;
    font-weight: 700;
    text-transform: uppercase;
    color: #2e3d49;
    margin: 0
}

.category_block .list_layout a .course_stats>li .skill_level,.partner_course_block .list_layout a .course_stats>li .skill_level {
    list-style-type: none;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: .125em 0 0
}

.category_block .list_layout a .course_stats>li .skill_level li,.partner_course_block .list_layout a .course_stats>li .skill_level li {
    float: left;
    width: 1.375em;
    margin: 0
}

.category_block .list_layout a .course_stats>li .skill_level li span,.partner_course_block .list_layout a .course_stats>li .skill_level li span {
    text-indent: -999em;
    display: block;
    width: 1em;
    height: 1em;
    border: 2px solid #2e3d49;
    border-radius: 1em
}

.category_block .list_layout a .course_stats>li .skill_level.skill_one li:first-child span,.partner_course_block .list_layout a .course_stats>li .skill_level.skill_one li:first-child span {
    background: #2e3d49
}

.category_block .list_layout a .course_stats>li .skill_level.skill_two li:first-child span,.partner_course_block .list_layout a .course_stats>li .skill_level.skill_two li:first-child span {
    background: #2e3d49
}

.category_block .list_layout a .course_stats>li .skill_level.skill_two li:nth-child(2) span,.partner_course_block .list_layout a .course_stats>li .skill_level.skill_two li:nth-child(2) span {
    background: #2e3d49
}

.category_block .list_layout a .course_stats>li .skill_level.skill_three li span,.partner_course_block .list_layout a .course_stats>li .skill_level.skill_three li span {
    background: #2e3d49
}

.category_block .list_layout a .course_stats>li.co_created h4,.partner_course_block .list_layout a .course_stats>li.co_created h4 {
    margin-bottom: 0
}

.category_block .list_layout a .course_stats>li.co_created .google,.partner_course_block .list_layout a .course_stats>li.co_created .google {
    max-width: 122px
}

.category_block .list_layout a .course_stats>li:nth-child(2n),.partner_course_block .list_layout a .course_stats>li:nth-child(2n) {
    margin-right: 0
}

.category_block .grid_layout,.partner_course_block .grid_layout {
    display: block
}

.category_block .list_layout,.partner_course_block .list_layout {
    display: none
}

.category_block.list--on .grid_layout,.partner_course_block.list--on .grid_layout {
    display: none
}

.category_block.list--on .list_layout,.partner_course_block.list--on .list_layout {
    display: block
}

.category_block.list--on .nanodegree_feature,.partner_course_block.list--on .nanodegree_feature {
    margin-top: 0
}

.category_block.list--on .nanodegree_feature .contain,.partner_course_block.list--on .nanodegree_feature .contain {
    padding: 3.5em 1.5em;
    max-width: 65.625em
}

@media (min-width: 35em) {
    .category_block .heading h2,.partner_course_block .heading h2 {
        font-size:2.125em
    }

    .category_block .nanodegree_feature h2.feature_heading,.partner_course_block .nanodegree_feature h2.feature_heading {
        font-size: 2.125em
    }

    .category_block .nanodegree_feature p,.partner_course_block .nanodegree_feature p {
        margin-bottom: 3.5em
    }
}

@media (min-width: 40em) {
    .category_block .list_layout a,.partner_course_block .list_layout a {
        position:relative;
        padding: 2.5em 0 2.5em 15.75em;
        border-top: none
    }

    .category_block .list_layout a .course_image,.partner_course_block .list_layout a .course_image {
        display: block;
        position: absolute;
        top: 2.5em;
        left: 0;
        width: 13.75em;
        max-width: 13.75em
    }

    .category_block .list_layout a .course_stats,.partner_course_block .list_layout a .course_stats {
        max-width: 25em
    }
}

@media (min-width: 44em) {
    .category_block,.partner_course_block {
        padding:6em 0 1.5em
    }

    .category_block .nanodegree_feature .contain,.partner_course_block .nanodegree_feature .contain {
        padding: 10em 1.5em 5em
    }

    .category_block .course_list li,.partner_course_block .course_list li {
        float: left;
        width: 47.5%;
        margin-right: 5%
    }

    .category_block .course_list li:nth-child(2n),.partner_course_block .course_list li:nth-child(2n) {
        margin-right: 0
    }

    .category_block .course_list li:nth-child(3) .card_img,.partner_course_block .course_list li:nth-child(3) .card_img {
        display: none
    }

    .category_block.list--on .course_list li,.partner_course_block.list--on .course_list li {
        float: none;
        width: 100%;
        margin-right: 0
    }

    .category_block.list--on .nanodegree_feature .contain,.partner_course_block.list--on .nanodegree_feature .contain {
        padding: 7.5em 1.5em;
        max-width: 65.625em
    }
}

@media (min-width: 58.125em) {
    .category_block .course_list li,.partner_course_block .course_list li {
        width:31%;
        max-width: 31%;
        margin-right: 3.5%
    }

    .category_block .course_list li:nth-child(2n),.partner_course_block .course_list li:nth-child(2n) {
        margin-right: 3.5%
    }

    .category_block .course_list li:nth-child(3n),.partner_course_block .course_list li:nth-child(3n) {
        margin-right: 0
    }

    .category_block .course_list li:nth-child(3n) .card_img,.partner_course_block .course_list li:nth-child(3n) .card_img {
        display: block
    }

    .category_block.list--on .course_list li,.partner_course_block.list--on .course_list li {
        width: 100%;
        max-width: 100%;
        margin-right: 0
    }

    .category_block.list--on .course_list li:nth-child(2n),.partner_course_block.list--on .course_list li:nth-child(2n) {
        margin-right: 0
    }
}

@media (min-width: 62em) {
    .category_block .list_layout a,.partner_course_block .list_layout a {
        clear:both;
        padding: 0 20.75em 2.5em 15.75em
    }

    .category_block .list_layout a .course_image,.partner_course_block .list_layout a .course_image {
        top: 0
    }

    .category_block .list_layout a .course_info p,.partner_course_block .list_layout a .course_info p {
        margin-bottom: 0;
        max-width: 32.5em
    }

    .category_block .list_layout a .course_stats,.partner_course_block .list_layout a .course_stats {
        position: absolute;
        width: 18.75em;
        top: .5em;
        right: 0
    }
}

@media (min-width: 70em) {
    .category_block .nanodegree_feature .contain,.partner_course_block .nanodegree_feature .contain {
        text-align:left;
        position: relative;
        padding: 12.5em 27.75em 12.5em 1.5em
    }

    .category_block .nd_slider,.partner_course_block .nd_slider {
        position: absolute;
        top: 7.5em;
        right: 1.5em;
        width: 23.75em
    }

    .category_block.list--on .nanodegree_feature .contain,.partner_course_block.list--on .nanodegree_feature .contain {
        padding: 14em 1.5em 13em
    }
}

.hire_talent_hero .outer_contain {
    background-image: url(/assets/images/pages/hire_talent/hero_3080x2054.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover
}

.hire_talent_hero .contain {
    padding: 0 1.5em
}

.hire_talent_hero .hero_content {
    text-align: center;
    max-width: 43.75em;
    margin: 0 auto;
    padding: 3.5em 0
}

.hire_talent_hero h1 {
    color: #fff;
    font-size: 2em;
    font-weight: 300;
    line-height: 1.25em;
    margin-bottom: .25em
}

.hire_talent_hero h3 {
    color: #fff;
    font-size: 1.125em;
    margin-bottom: 2.25em
}

.hire_talent_hero p {
    color: #fff;
    font-size: .875em;
    line-height: 1.75em;
    margin-bottom: 3.5em
}

.hire_talent_hero .callout_btn {
    margin: 0 auto
}

@media (min-width: 35em) {
    .hire_talent_hero h1 {
        font-size:2.5em
    }

    .hire_talent_hero p {
        font-size: 1em
    }
}

@media (min-width: 44em) {
    .hire_talent_hero .hero_content {
        padding:7.5em 0
    }
}

.hire_talent_why_hire {
    position: relative;
    text-align: center
}

.hire_talent_why_hire .contain {
    position: relative;
    padding: 3.5em 1.5em
}

.hire_talent_why_hire h2 {
    font-size: 1.75em;
    color: #2e3d49;
    font-weight: 300;
    margin-bottom: 1.25em
}

.hire_talent_why_hire h3 {
    font-size: 1.75em;
    color: #2e3d49;
    font-weight: 300;
    margin-bottom: .75em
}

.hire_talent_why_hire p {
    font-weight: 400;
    color: #757c81;
    margin: 0;
    line-height: 1.625
}

.hire_talent_why_hire img {
    height: 11.25em;
    margin-bottom: 1.5em
}

.hire_talent_why_hire .hire_benefits,.hire_talent_why_hire .partner_benefits {
    overflow: hidden;
    list-style-type: none;
    margin: 0 0 3.5em;
    padding: 0
}

.hire_talent_why_hire .hire_benefits li,.hire_talent_why_hire .partner_benefits li {
    position: relative;
    display: block;
    max-width: 30em;
    margin: 0 auto 1em;
    background: #fff;
    text-align: center;
    color: #2e3d49;
    padding: 2em 1.5em;
    font-weight: 600;
    text-decoration: none;
    border: 1px solid #dbe2e8
}

.hire_talent_why_hire .hire_benefits li:last-child,.hire_talent_why_hire .partner_benefits li:last-child {
    margin: 0 auto
}

@media (min-width: 35em) {
    .hire_talent_why_hire h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .hire_talent_why_hire .contain {
        padding:7.5em 1.5em
    }
}

@media (min-width: 60em) {
    .hire_talent_why_hire .hire_benefits,.hire_talent_why_hire .partner_benefits {
        display:-ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .hire_talent_why_hire .hire_benefits li,.hire_talent_why_hire .partner_benefits li {
        padding: 3.125em 2.5em;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: 32%;
        margin-right: 2em;
        margin-bottom: 0
    }

    .hire_talent_why_hire .hire_benefits li:last-child,.hire_talent_why_hire .partner_benefits li:last-child {
        margin-right: 0
    }
}

.hire_talent_video .contain {
    padding: 0 1.5em;
    overflow: hidden
}

.hire_talent_video h2 {
    text-align: center;
    font-size: 1.75em;
    color: #2e3d49;
    font-weight: 300;
    margin-bottom: 1.25em
}

.hire_talent_video .video_preview_contain {
    text-align: center;
    position: relative;
    overflow: hidden;
    margin: 0 auto 2em;
    max-width: 36.25em
}

.hire_talent_video .video_preview_contain img {
    max-width: 31.25em
}

.hire_talent_video .video_preview_contain .desktop-only {
    display: none
}

.hire_talent_video .video_preview_contain .video_info {
    position: absolute;
    bottom: 0;
    left: 0
}

.hire_talent_video .video_preview_contain .video_info :after {
    content: "";
    display: block;
    clear: both
}

.hire_talent_video .video_preview_contain .video_info h3 {
    color: #fff;
    font-size: 1.25em;
    font-weight: 600;
    margin: 0;
    padding: 0 1em 2.25em
}

.hire_talent_video .video_preview_contain .video_info h3 .play_icon {
    cursor: pointer;
    display: block;
    position: relative;
    z-index: 1;
    width: 2.5em;
    height: 2.5em;
    margin-top: .5em
}

.hire_talent_video .video_preview_contain .video_info h3 .play_icon::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    left: 40%;
    bottom: 15%;
    width: 55%;
    height: 0%;
    background: #02b3e4;
    transform: translateX(-50%) rotate(32deg);
    transition: height .5s ease-in-out
}

.hire_talent_video .video_preview_contain .video_info.centered {
    top: 50%;
    bottom: auto;
    left: 50%;
    transform: translate(-50%,-50%)
}

.hire_talent_video .video_preview_contain .video_info.centered h3 {
    padding: 0
}

.hire_talent_video .video_preview_contain .video_info.centered h3 .play_icon {
    margin: 0
}

.hire_talent_video .video_preview_contain:hover .video_info h3 .play_icon::before {
    height: 55%
}

@media (min-width: 30em) {
    .hire_talent_video .video_preview_contain .video_info h3 {
        font-size:1.5em;
        padding: 0 1.5em 2.25em
    }
}

@media (min-width: 35em) {
    .hire_talent_video h2 {
        font-size:2.125em
    }

    .hire_talent_video .video_preview_contain .desktop-only {
        display: block
    }
}

@media (min-width: 50em) {
    .hire_talent_video .video_preview_contain {
        width:47.5%;
        margin: 0 auto
    }

    .hire_talent_video .video_preview_contain .desktop-only {
        display: block
    }
}

.hire_talent_partners .outer_contain {
    background: #fafbfc
}

.hire_talent_partners.white_bg .outer_contain {
    background: #fff
}

.hire_talent_partners .contain {
    padding: 3.5em 1.5em
}

.hire_talent_partners h5 {
    text-align: center;
    font-size: .75em;
    color: #7d97ad;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 2.5em;
    letter-spacing: .0625em
}

.hire_talent_partners ul {
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    padding: 0;
    text-align: center
}

.hire_talent_partners ul li {
    float: left;
    width: 35%;
    margin: 2em 0;
    margin-right: 25%
}

.hire_talent_partners ul li:nth-child(2n) {
    margin-right: 0
}

.hire_talent_partners .callout_btn {
    margin: 0 auto
}

@media (min-width: 30em) {
    .hire_talent_partners ul li {
        width:26%;
        margin-right: 11%;
        min-height: 110px
    }

    .hire_talent_partners ul li:nth-child(2n) {
        margin-right: 11%
    }

    .hire_talent_partners ul li:nth-child(3n) {
        margin-right: 0
    }
}

@media (min-width: 40em) {
    .hire_talent_partners h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .hire_talent_partners .contain {
        padding:7.5em 1.5em
    }
}

@media (min-width: 50em) {
    .hire_talent_partners h2 {
        font-size:2.125em
    }

    .hire_talent_partners ul li {
        width: 16%;
        margin-right: 12%
    }

    .hire_talent_partners ul li:nth-child(2n),.hire_talent_partners ul li:nth-child(2n+1) {
        margin-right: 12%
    }

    .hire_talent_partners ul li:nth-child(4n) {
        margin-right: 0
    }
}

@media (min-width: 65em) {
    .hire_talent_partners ul li {
        width:10%;
        margin-right: 5%
    }

    .hire_talent_partners ul li:nth-child(2n),.hire_talent_partners ul li:nth-child(2n+1) {
        margin-right: 5%
    }

    .hire_talent_partners ul li:nth-child(7n) {
        margin-right: 0
    }
}

.hire_talent_student_work .outer_contain {
    background: #f4f4ef
}

.hire_talent_student_work .contain {
    position: relative;
    padding: 3.5em 1.5em
}

.hire_talent_student_work h2 {
    text-align: center;
    font-size: 1.75em;
    color: #2e3d49;
    font-weight: 300;
    margin-bottom: 1.25em
}

.hire_talent_student_work h2 {
    font-size: 1.75em;
    color: #2e3d49;
    font-weight: 300;
    text-align: center
}

.hire_talent_student_work p {
    font-weight: 400;
    color: #757c81;
    margin: 0;
    text-align: center;
    max-width: 43.75em;
    margin: 0 auto
}

.hire_talent_student_work .student_work_cards {
    list-style-type: none;
    margin: 3.5em 0 0;
    padding: 0
}

.hire_talent_student_work .student_work_cards li {
    display: block;
    max-width: 30em;
    margin: 0 auto 1.5em;
    background: #fff;
    border: 1px solid #dbe2e8;
    box-shadow: 0 .25em .5em 0 rgba(46,61,73,.12)
}

.hire_talent_student_work .student_work_cards li .student_info {
    position: relative;
    padding: 1.5em 1em 1.5em 6.25em
}

.hire_talent_student_work .student_work_cards li .student_info img {
    position: absolute;
    top: 50%;
    left: 1.75em;
    transform: translateY(-50%);
    width: 3.125em;
    height: 3.125em;
    border-radius: 50%
}

.hire_talent_student_work .student_work_cards li .student_info h3 {
    font-size: 1.125em;
    color: #2e3d49;
    font-weight: 600;
    margin-bottom: .25em
}

.hire_talent_student_work .student_work_cards li .student_info h4 {
    font-size: .75em;
    margin-bottom: 0;
    text-transform: uppercase;
    color: #7d97ad;
    font-weight: 600;
    letter-spacing: .0625em
}

.hire_talent_student_work .student_work_cards li .work_info {
    padding: 1.5em 1em 0 1.75em;
    min-height: 7.5em
}

.hire_talent_student_work .student_work_cards li .work_info h3 {
    font-size: 1.125em;
    color: #2e3d49;
    font-weight: 400;
    margin-bottom: 0
}

.hire_talent_student_work .student_work_cards li .work_info h4 {
    font-size: .875em;
    margin-bottom: .5em;
    color: #7d97ad;
    font-weight: 400
}

.hire_talent_student_work .student_work_cards li:last-child {
    margin-bottom: 0
}

@media (min-width: 35em) {
    .hire_talent_student_work h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .hire_talent_student_work .contain {
        padding:7.5em 1.5em
    }
}

@media (min-width: 60em) {
    .hire_talent_student_work .student_work_cards {
        display:-ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .hire_talent_student_work .student_work_cards li {
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: 32%;
        margin-right: 2em;
        margin-bottom: 0
    }

    .hire_talent_student_work .student_work_cards li:last-child {
        margin-right: 0
    }
}

.hire_talent_contact_form .messages {
    position: relative;
    visibility: hidden;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.hire_talent_contact_form .messages a {
    color: #fff
}

.hire_talent_contact_form .messages li {
    display: inline-block;
    width: 100%;
    padding: 1em 1.5em
}

.hire_talent_contact_form .messages li .close_banner {
    display: block;
    line-height: 0;
    position: absolute;
    top: 1.25em;
    right: 1em;
    width: .875em;
    height: .875em;
    opacity: .7;
    transition: opacity .3s ease;
    cursor: pointer
}

.hire_talent_contact_form .messages li .close_banner:hover {
    opacity: 1
}

.hire_talent_contact_form .messages li span {
    font-size: .875em;
    color: #fff
}

.hire_talent_contact_form .messages li:last-child {
    margin-bottom: 1.5em
}

.hire_talent_contact_form .messages li.success {
    background: #15c26b
}

.hire_talent_contact_form .messages li.warning {
    background: #ecc81a
}

.hire_talent_contact_form .messages li.critical {
    background: #f04546
}

.hire_talent_contact_form input {
    display: block;
    width: 100%;
    margin-bottom: 1.5em
}

.hire_talent_contact_form input:last-child {
    margin-bottom: 0
}

.hire_talent_contact_form .disabled {
    background: #dbe2e8
}

.hire_talent_contact_form label {
    clear: left;
    display: block;
    position: relative;
    font-size: .75em;
    color: #7d97ad;
    text-transform: uppercase;
    padding-left: 2.833333333em;
    margin-bottom: 2.5em
}

.hire_talent_contact_form label a {
    text-decoration: none;
    border-bottom: 1px solid #91daee;
    color: #7d97ad;
    transition: color .3s ease
}

.hire_talent_contact_form label a:hover {
    color: #4c6478
}

.hire_talent_contact_form label::before {
    content: "";
    position: absolute;
    top: -.125em;
    left: 0;
    width: 1.666666667em;
    height: 1.666666667em;
    border: 1px solid #dbe2e8
}

.hire_talent_contact_form label::after {
    content: "";
    position: absolute;
    top: -.125em;
    left: 0;
    width: 1.666666667em;
    height: 1.666666667em;
    background-image: url(svgs/check_blue.min.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 0;
    transition: opacity .3s ease,background-size .3s ease
}

.hire_talent_contact_form input[type=checkbox] {
    visibility: hidden;
    width: 0
}

.hire_talent_contact_form input[type=checkbox]:checked+label::after {
    background-size: 60%;
    opacity: 1
}

.hire_talent_contact_form p {
    font-weight: 400;
    font-size: .875em
}

@media (min-width: 28em) {
    .hire_talent_contact_form input[type=email],.hire_talent_contact_form input[type=password],.hire_talent_contact_form input[type=tel],.hire_talent_contact_form input[type=text] {
        float:left;
        width: 47.5%;
        margin-right: 5%
    }

    .hire_talent_contact_form input[type=email]:nth-child(2n+3),.hire_talent_contact_form input[type=password]:nth-child(2n+3),.hire_talent_contact_form input[type=tel]:nth-child(2n+3),.hire_talent_contact_form input[type=text]:nth-child(2n+3) {
        margin-right: 0
    }

    .hire_talent_contact_form label.half {
        float: left;
        clear: none;
        width: 47.5%;
        margin-right: 5%
    }

    .hire_talent_contact_form label.half.last {
        margin-right: 0
    }

    .hire_talent_contact_form p {
        float: right;
        width: 100%;
        text-align: right
    }
}

@media (min-width: 31em) {
    .hire_talent_contact_form .submit_contain label {
        float:left;
        width: 65%;
        margin-top: 2em
    }

    .hire_talent_contact_form .submit_contain .callout_btn {
        float: right;
        width: 35%;
        margin-top: 1em
    }
}

@media (min-width: 68em) {
    .hire_talent_contact_form .messages {
        min-height:6.5em;
        position: relative
    }

    .hire_talent_contact_form .messages li {
        position: absolute;
        bottom: 0;
        margin-bottom: 1.5em
    }
}

.hire_talent_join_talent_source .outer_contain {
    background-color: #fafbfc
}

.hire_talent_join_talent_source .contain {
    padding: 3.5em 1.5em;
    clear: both
}

.hire_talent_join_talent_source .contain:after {
    content: "";
    display: block;
    clear: both
}

.hire_talent_join_talent_source .hire_talent_contact_form {
    max-width: 36.75em;
    margin: 0 auto
}

.hire_talent_join_talent_source .talent_source_content {
    width: 100%;
    margin-bottom: 1.5em
}

.hire_talent_join_talent_source .talent_source_content h2 {
    font-size: 1.75em;
    color: #2e3d49;
    font-weight: 300;
    text-align: center;
    margin-bottom: 1.25em
}

.hire_talent_join_talent_source .talent_source_content ul {
    list-style-type: none;
    margin: 0 1.5em 0;
    padding: 0
}

.hire_talent_join_talent_source .talent_source_content ul li {
    position: relative;
    color: #525c65;
    margin-bottom: 1.5em;
    padding-left: 2.5em
}

.hire_talent_join_talent_source .talent_source_content ul li:last-child {
    margin-bottom: 0
}

.hire_talent_join_talent_source .talent_source_content ul li::before {
    content: "";
    position: absolute;
    top: .125em;
    left: 0;
    width: 1.25em;
    height: 1.25em;
    background-color: #15c26b;
    background-image: url(/assets/images/svgs/check_white.min.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 70%;
    border-radius: 1em
}

@media (min-width: 35em) {
    .hire_talent_join_talent_source .talent_source_content {
        max-width:100%
    }

    .hire_talent_join_talent_source .talent_source_content h2 {
        font-size: 2.125em;
        text-align: left
    }
}

@media (min-width: 44em) {
    .hire_talent_join_talent_source .contain {
        padding:7.5em 1.5em
    }

    .hire_talent_join_talent_source .talent_source_content {
        max-width: 100%;
        margin-bottom: 1.5em
    }

    .hire_talent_join_talent_source .talent_source_content h2 {
        text-align: center
    }

    .hire_talent_join_talent_source .talent_source_content ul {
        margin-left: 20%
    }
}

@media (min-width: 68em) {
    .hire_talent_join_talent_source .contain {
        padding:7.5em 1.5em
    }

    .hire_talent_join_talent_source .hire_talent_contact_form {
        margin-top: 1.5em;
        padding-top: 0;
        float: right
    }

    .hire_talent_join_talent_source .talent_source_content {
        float: left;
        max-width: 40%;
        margin-bottom: 0
    }

    .hire_talent_join_talent_source .talent_source_content h2 {
        text-align: left;
        margin-bottom: 1em
    }

    .hire_talent_join_talent_source .talent_source_content ul {
        margin: 0
    }
}

.hire_talent_blog {
    margin-top: 0;
    clear: both
}

.hire_talent_blog .contain {
    padding: 3.5em 1.5em
}

.hire_talent_blog .heading {
    position: relative;
    padding-bottom: 2.5em
}

.hire_talent_blog .heading h2 {
    font-size: 1.75em;
    color: #2e3d49;
    font-weight: 300
}

.hire_talent_blog .jspHorizontalBar {
    display: none
}

.hire_talent_blog .scroll_pane {
    margin-bottom: 0
}

@media (min-width: 35em) {
    .hire_talent_blog .heading h2 {
        font-size:2.125em
    }

    .hire_talent_blog .jspHorizontalBar {
        display: block
    }
}

@media (min-width: 44em) {
    .hire_talent_blog .contain {
        padding:7.5em 1.5em
    }

    .hire_talent_blog .jspHorizontalBar {
        display: block
    }
}

@media (min-width: 50em) {
    .hire_talent_blog .heading {
        padding-right:21.25em
    }

    .hire_talent_blog .heading h2 {
        margin-bottom: 0
    }

    .hire_talent_blog .heading .more_btn {
        position: absolute;
        top: .25em;
        right: 0
    }

    .hire_talent_blog .jspHorizontalBar {
        display: block
    }
}

.get_hired .outer_contain {
    background-image: url(pages/get_hired/hero_hiring_interview.jpg);
    background-repeat: no-repeat;
    background-position-y: 27%;
    background-size: cover
}

.get_hired .contain {
    padding: 0 1.5em
}

.get_hired .hero_content {
    text-align: center;
    max-width: 43.75em;
    margin: 0 auto;
    padding: 3.5em 0
}

.get_hired h1 {
    color: #fff;
    font-size: 2em;
    font-weight: 300;
    line-height: 1.25em;
    margin-bottom: 0
}

.get_hired h3 {
    color: #fff;
    font-size: 1.125em;
    margin-bottom: 0
}

.get_hired .no_bottom {
    margin-bottom: 0
}

@media (min-width: 35em) {
    .get_hired h1 {
        font-size:2.5em
    }
}

@media (min-width: 44em) {
    .get_hired .hero_content {
        padding:7.5em 0
    }
}

.get_hired_benefits {
    text-align: center
}

.get_hired_benefits .contain {
    padding: 7.5em 1.5em
}

.get_hired_benefits h2 {
    font-size: 2.125em;
    font-weight: 300;
    color: #2e3d49;
    margin-bottom: 1.25em
}

.get_hired_benefits .nd_career_benefits {
    margin: 3em auto 0;
    padding: 0;
    list-style-type: none;
    overflow: hidden
}

.get_hired_benefits .nd_career_benefits h2 {
    font-size: 1.75em
}

.get_hired_benefits .nd_career_benefits .benefit_card {
    float: left;
    display: block;
    padding: 2em 2.5em;
    text-decoration: none;
    background-color: #fff
}

.get_hired_benefits .nd_career_benefits .benefit_card .feature {
    width: 135px;
    height: 135px;
    margin-bottom: 1.25em
}

.get_hired_benefits p {
    font-weight: 400;
    color: #757c81;
    line-height: 1.625
}

.get_hired_benefits .callout_btn {
    clear: left;
    margin: 4.5em auto 0;
    padding-left: 2em;
    padding-right: 2em;
    max-width: 22em
}

@media (min-width: 37.5em) {
    .get_hired_benefits .nd_career_benefits {
        display:-ms-flexbox;
        display: flex;
        position: relative;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap
    }

    .get_hired_benefits .benefit_card {
        -ms-flex: 1;
        flex: 1;
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        border-right: thin solid #dbe2e8
    }

    .get_hired_benefits .benefit_card:nth-child(even) {
        border-right: none
    }

    .get_hired_benefits .benefit_card:first-child {
        border-bottom: thin solid #dbe2e8
    }

    .get_hired_benefits .benefit_card:nth-child(2) {
        border-bottom: thin solid #dbe2e8
    }
}

@media (min-width: 66.25em) {
    .get_hired_benefits .nd_career_benefits {
        padding:0;
        list-style-type: none;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-line-pack: justify;
        align-content: space-between;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    .get_hired_benefits .nd_career_benefits .benefit_card {
        display: block;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
        border-right: thin solid #dbe2e8;
        border-bottom: none
    }

    .get_hired_benefits .nd_career_benefits .benefit_card:last-child {
        border-right: none
    }
}

.get_hired_nd_plus_feature .outer_contain {
    background-color: #fafbfc;
    background-image: url(svgs/icon_nd_plus_white_watermark.svg);
    background-repeat: no-repeat;
    background-size: 80%;
    background-position: -62% 35%
}

@media (min-width: 38.125em) {
    .get_hired_nd_plus_feature .outer_contain {
        background-size:70%;
        background-position: -37% 35%
    }
}

@media (min-width: 50em) {
    .get_hired_nd_plus_feature .outer_contain {
        background-size:60%;
        background-position: -25% 35%
    }
}

@media (min-width: 60em) {
    .get_hired_nd_plus_feature .outer_contain {
        background-size:40%;
        background-position: -12% 35%
    }
}

.get_hired_nd_plus_feature .contain {
    padding: 3.5em 1.5em;
    text-align: center
}

.get_hired_nd_plus_feature h2 {
    font-size: 2.125em;
    font-weight: 300;
    color: #2e3d49
}

.get_hired_nd_plus_feature p {
    margin: 0 auto 3.5em;
    max-width: 44.375em
}

.get_hired_nd_plus_feature .more_btn {
    margin: 0 auto
}

@media (min-width: 44em) {
    .get_hired_nd_plus_feature .contain {
        padding:7.5em 1.5em
    }
}

.get_hired_hiring_partners .contain {
    padding: 3.5em 1.5em
}

.get_hired_hiring_partners h2 {
    font-size: 2.125em;
    font-weight: 300;
    margin-bottom: 1.25em;
    text-align: center;
    color: #2e3d49
}

.get_hired_hiring_partners h4 {
    font-size: 1.125em;
    font-weight: 600;
    margin-bottom: 1.5em;
    text-align: left;
    color: #2e3d49
}

.get_hired_hiring_partners h5 {
    font-size: .75em;
    font-weight: 400;
    margin-bottom: 2.5em;
    text-align: center;
    text-transform: uppercase;
    color: #7d97ad
}

.get_hired_hiring_partners ul {
    overflow: hidden;
    margin: 0;
    padding: 0;
    list-style-type: none;
    text-align: center
}

.get_hired_hiring_partners ul li {
    float: left;
    width: 45%;
    margin: 2em 0;
    margin-right: 10%
}

.get_hired_hiring_partners ul li:nth-child(2n) {
    margin-right: 0
}

@media (min-width: 31em) {
    .get_hired_hiring_partners ul li {
        width:26%;
        margin-right: 11%
    }

    .get_hired_hiring_partners ul li:nth-child(2n) {
        margin-right: 11%
    }

    .get_hired_hiring_partners ul li:nth-child(3n) {
        margin-right: 0
    }
}

@media (min-width: 40em) {
    .get_hired_hiring_partners h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .get_hired_hiring_partners .contain {
        padding:7.5em 1.5em
    }
}

@media (min-width: 50em) {
    .get_hired_hiring_partners h2 {
        font-size:2.125em
    }

    .get_hired_hiring_partners ul li {
        width: 16%;
        margin-right: 12%
    }

    .get_hired_hiring_partners ul li:nth-child(2n),.get_hired_hiring_partners ul li:nth-child(3n) {
        margin-right: 12%
    }

    .get_hired_hiring_partners ul li:nth-child(4n) {
        margin-right: 0
    }
}

@media (min-width: 65em) {
    .get_hired_hiring_partners ul li {
        width:12%;
        margin-right: 10%
    }

    .get_hired_hiring_partners ul li:nth-child(2n),.get_hired_hiring_partners ul li:nth-child(3n),.get_hired_hiring_partners ul li:nth-child(4n) {
        margin-right: 10%
    }

    .get_hired_hiring_partners ul li:nth-child(5n) {
        margin-right: 0
    }
}

.get_hired_arrow_slider_block {
    clear: both
}

.get_hired_arrow_slider_block .outer_contain {
    background: #fff
}

.get_hired_arrow_slider_block .contain {
    max-width: 63.625em;
    padding: 3.5em 1.5em
}

.get_hired_arrow_slider_block .flex-control-nav {
    display: none
}

.get_hired_arrow_slider_block .arrow_slider {
    position: relative
}

.get_hired_arrow_slider_block .arrow_slider .slides {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-next,.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-prev {
    position: absolute;
    top: 0;
    left: 0;
    width: 3.5em;
    height: 100%
}

.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-next a,.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-prev a {
    display: block;
    height: 100%;
    transition: opacity .3s ease;
    text-indent: -999em;
    opacity: .7;
    background-image: url(svgs/left_arrow.min.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1.75em
}

.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-next a:hover,.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-prev a:hover {
    opacity: 1
}

.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-next {
    right: 0;
    left: auto
}

.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-next a {
    background-image: url(svgs/right_arrow.min.svg)
}

.get_hired_arrow_slider_block blockquote {
    margin: 0;
    padding: 0 3.5em;
    text-align: center
}

.get_hired_arrow_slider_block blockquote p {
    font-size: 1.125em;
    font-weight: 300;
    font-style: italic;
    line-height: 1.5em;
    margin-bottom: 3em;
    color: #7d97ad
}

.get_hired_arrow_slider_block blockquote p::before {
    content: open-quote
}

.get_hired_arrow_slider_block blockquote p::after {
    content: close-quote
}

.get_hired_arrow_slider_block blockquote cite img {
    width: 6.25em;
    margin-bottom: 1em;
    border-radius: 50%
}

.get_hired_arrow_slider_block blockquote cite h3 {
    font-size: 1.125em;
    font-weight: 600;
    font-style: normal;
    margin-bottom: .25em;
    color: #2e3d49
}

.get_hired_arrow_slider_block blockquote cite h4 {
    font-size: .75em;
    font-weight: 600;
    color: #7d97ad;
    text-transform: uppercase;
    letter-spacing: .0625em;
    margin-bottom: .25em;
    font-style: normal
}

.get_hired_arrow_slider_block blockquote cite h5 {
    font-size: 1em;
    font-style: normal;
    margin-bottom: 0;
    color: #2e3d49
}

@media (min-width: 44em) {
    .get_hired_arrow_slider_block .contain {
        padding:7.5em 1.5em 5em
    }

    .get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-next,.get_hired_arrow_slider_block .arrow_slider .flex-direction-nav .flex-nav-prev {
        width: 5.625em
    }

    .get_hired_arrow_slider_block blockquote {
        padding: 0 8.125em
    }

    .get_hired_arrow_slider_block blockquote p {
        font-size: 1.5em
    }
}

.get_hired_career_resources .outer_contain {
    background-color: #fafbfc
}

.get_hired_career_resources .contain {
    padding: 3.5em 1.5em;
    text-align: center
}

.get_hired_career_resources h2 {
    font-size: 2.125em;
    font-weight: 300;
    color: #2e3d49
}

.get_hired_career_resources p {
    max-width: 44.375em;
    margin: 0 auto 3.5em
}

.get_hired_career_resources .callout_btn {
    clear: both;
    margin: 0 auto
}

.get_hired_career_resources .resource_links {
    overflow: hidden;
    margin: 0 0 3.5em;
    padding: 0;
    list-style-type: none;
    text-align: center
}

.get_hired_career_resources .resource_links li {
    font-size: .75em;
    display: inline-block;
    width: 100%;
    max-width: 25em;
    height: 7em;
    margin: 0 auto 1.5em;
    transition: box-shadow .3s ease,color .3s ease,border .3s ease;
    text-align: center;
    border: 1px solid #dbe2e8;
    border-radius: .142857143em;
    background: #fff;
    box-shadow: 0 .1em .125em 0 rgba(46,61,73,.08)
}

.get_hired_career_resources .resource_links li:hover {
    border: 1px solid #bcc9d4;
    box-shadow: 0 .2em 1.115em 0 rgba(46,61,73,.1)
}

.get_hired_career_resources .resource_links li a {
    font-weight: 600;
    position: relative;
    display: block;
    height: 100%;
    text-decoration: none;
    text-transform: uppercase;
    color: #7d97ad;
    letter-spacing: .0625em
}

.get_hired_career_resources .resource_links li a span {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    padding: 0 .5em;
    transform: translateY(-50%)
}

.get_hired_career_resources .resource_links li a:hover {
    color: #44494c
}

@media (min-width: 35em) {
    .get_hired_career_resources h2 {
        font-size:2.125em
    }

    .get_hired_career_resources .resource_links li {
        margin: 0 .5em 1.5em
    }
}

@media (min-width: 44em) {
    .get_hired_career_resources .contain {
        padding:7.5em 1.5em
    }
}

@media (min-width: 60em) {
    .get_hired_career_resources .resource_links li {
        float:left;
        width: 18%;
        margin: 0 0 1.5em;
        margin-right: 2.5%
    }

    .get_hired_career_resources .resource_links li:nth-child(2n),.get_hired_career_resources .resource_links li:nth-child(3n) {
        margin-right: 2.5%
    }

    .get_hired_career_resources .resource_links li:last-child {
        margin-right: 0
    }
}

.udacity_jobs .small_contain {
    padding: 3.5em 1.5em;
    text-align: center
}

.udacity_jobs h2 {
    font-size: 2.125em;
    font-weight: 300;
    color: #2e3d49
}

.udacity_jobs p {
    max-width: 44.375em;
    margin: 0 auto 3.5em
}

.udacity_jobs .callout_btn {
    margin: 0 auto
}

@media (min-width: 35em) {
    .udacity_jobs h2 {
        font-size:2.125em
    }
}

@media (min-width: 44em) {
    .udacity_jobs .small_contain {
        padding:7.5em 1.5em
    }
}

.page-leaderboard {
    background-color: #fafbfc
}

.page-leaderboard nav.main ul.main_nav li a {
    color: #fff
}

.page-leaderboard .logo img {
    filter: brightness(0) invert(1)
}

.page-leaderboard .hero {
    margin-top: -7.188em
}

.page-leaderboard .hero .outer_contain {
    background: url(/assets/images/pages/leaderboard/hero-leaderboard.jpg) center center no-repeat;
    background-size: cover
}

.page-leaderboard .hero .contain {
    padding: 0 1.5em
}

.page-leaderboard .hero .hero_content {
    min-height: 18.75em;
    text-align: center;
    max-width: 48.75em;
    margin: 0 auto;
    padding: 10em 0 4em
}

@media (min-width: 44em) {
    .page-leaderboard .hero .hero_content {
        padding:11em 0 0;
        min-height: 31.25em
    }
}

.page-leaderboard .hero h1 {
    color: #fff;
    font-size: 2.56em;
    font-weight: 300;
    line-height: 1.22em;
    margin-bottom: .6em;
    left: 0;
    padding: 0
}

.page-leaderboard .hero p {
    max-width: 43.75em;
    font-size: 1.125em;
    letter-spacing: .01em;
    font-weight: 300;
    color: #fafbfc;
    line-height: 1.67em
}

.page-leaderboard .leaderboard-progress {
    clear: both
}

.page-leaderboard .leaderboard-progress .contain {
    padding: 3em 1.5em 2em 1.5em
}

@media (min-width: 70em) {
    .page-leaderboard .leaderboard-progress .contain {
        padding:6em 0 4.5em 0
    }
}

.page-leaderboard .leaderboard-progress .leaderboard-list {
    margin: 0 auto;
    padding: 0;
    list-style-type: none;
    text-align: center;
    max-width: 63.75em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-direction: column;
    flex-direction: column
}

@media (min-width: 48em) {
    .page-leaderboard .leaderboard-progress .leaderboard-list {
        -ms-flex-direction:row;
        flex-direction: row;
        -ms-flex-align: center;
        align-items: center
    }
}

.page-leaderboard .leaderboard-progress .leaderboard-list li {
    padding: 0
}

@media (min-width: 70em) {
    .page-leaderboard .leaderboard-progress .leaderboard-list li {
        padding:0 .5em
    }
}

.page-leaderboard .leaderboard-progress .leaderboard-list img {
    padding-bottom: 1em
}

@media (min-width: 70em) {
    .page-leaderboard .leaderboard-progress .leaderboard-list img {
        padding-bottom:1.6em
    }
}

.page-leaderboard .leaderboard-progress h2 {
    font-weight: 300;
    font-size: 1.75em;
    margin-bottom: 1em;
    text-align: center;
    color: #2e3d49
}

@media (min-width: 33em) {
    .page-leaderboard .leaderboard-progress h2 {
        font-size:2.125em
    }
}

.page-leaderboard .leaderboard-progress h3 {
    font-weight: 400;
    font-size: 1em;
    margin: 0 auto;
    text-align: center;
    max-width: 42.5em;
    line-height: 1.75em;
    color: #2e3d49
}

.page-leaderboard .leaderboard-progress h3 a {
    color: #02b3e4
}

.page-leaderboard .leaderboard-progress h3 a:hover {
    color: #028bb1
}

.page-leaderboard .ranking {
    clear: both
}

.page-leaderboard .ranking .contain {
    padding: 0 1.5em
}

.page-leaderboard .ranking .ranking-table {
    max-width: 66em;
    margin: 0 auto
}

.page-leaderboard .ranking .ranking-table-body {
    box-shadow: 0 0 .75em 0 rgba(46,60,73,.12);
    border-radius: 2px;
    border: solid .063em #dbe2e8;
    max-height: 24.625em;
    overflow: scroll;
    -webkit-overflow-scrolling: touch
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-body {
        max-height:31.125em
    }
}

.page-leaderboard .ranking .ranking-table-header-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 1.125em;
    padding-bottom: 1.125em;
    font-size: .75em;
    font-weight: 600;
    color: #7d97ad;
    letter-spacing: .125em;
    text-transform: uppercase
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-header-row {
        padding-top:1.875em;
        padding-bottom: 1.875em
    }
}

.page-leaderboard .ranking .ranking-table-header-data {
    text-align: center;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center
}

.page-leaderboard .ranking .ranking-table-header-data:first-child {
    width: 20%
}

@media (min-width: 48em) {
    .page-leaderboard .ranking .ranking-table-header-data:first-child {
        width:15%
    }
}

.page-leaderboard .ranking .ranking-table-header-data:nth-child(2) {
    padding-left: 9%;
    text-align: left;
    width: 50%
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-header-data:nth-child(2) {
        padding-left:6.3%
    }
}

@media (min-width: 48em) {
    .page-leaderboard .ranking .ranking-table-header-data:nth-child(2) {
        padding-left:9%;
        width: 55%
    }
}

@media (min-width: 70em) {
    .page-leaderboard .ranking .ranking-table-header-data:nth-child(2) {
        padding-left:4%
    }
}

.page-leaderboard .ranking .ranking-table-header-data:nth-child(3) {
    width: 30%
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-header-data:nth-child(3) {
        width:25%
    }
}

.page-leaderboard .ranking .ranking-table-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: .875em;
    padding-bottom: .875em;
    background-color: #fff
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-row {
        padding-top:1.125em;
        padding-bottom: 1.125em
    }
}

.page-leaderboard .ranking .ranking-table-row:nth-child(even) {
    background-color: #fafbfc
}

.page-leaderboard .ranking .ranking-table-row-leader-1,.page-leaderboard .ranking .ranking-table-row-leader-2,.page-leaderboard .ranking .ranking-table-row-leader-3 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: .875em;
    padding-bottom: .875em;
    background-color: #fff;
    box-shadow: 0 0 .75em 0 rgba(46,60,73,.12);
    border-radius: 2px;
    margin-bottom: 1.25em
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-row-leader-1,.page-leaderboard .ranking .ranking-table-row-leader-2,.page-leaderboard .ranking .ranking-table-row-leader-3 {
        padding-top:1.125em;
        padding-bottom: 1.125em
    }
}

.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-1,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-2,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-3,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-1,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-2,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-3,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-1,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-2,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-3 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    width: 20%
}

@media (min-width: 48em) {
    .page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-1,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-2,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-3,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-1,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-2,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-3,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-1,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-2,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-3 {
        width:15%
    }
}

.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-1 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-1 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-1 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-2 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-2 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-2 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-3 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-3 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-3 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-1 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-1 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-1 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-2 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-2 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-2 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-3 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-3 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-3 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-1 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-1 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-1 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-2 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-2 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-2 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-3 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-3 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-3 .medal-silver {
    margin-top: -1.313em;
    height: 2.875em;
    width: 2.875em
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-1 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-1 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-1 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-2 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-2 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-2 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-3 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-3 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-3 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-1 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-1 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-1 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-2 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-2 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-2 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-3 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-3 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-3 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-1 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-1 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-1 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-2 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-2 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-2 .medal-silver,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-3 .medal-bronze,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-3 .medal-gold,.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-3 .medal-silver {
        margin-top:-1.563em;
        height: 3.875em;
        width: 3.875em
    }
}

.page-leaderboard .ranking .ranking-table-row-leader-1 {
    border: solid .125em #ecc81a
}

.page-leaderboard .ranking .ranking-table-row-leader-1 .ranking-table-data-leader-1 .medal-gold {
    background: url(/assets/images/pages/leaderboard/medal-gold.svg) no-repeat;
    background-size: contain
}

.page-leaderboard .ranking .ranking-table-row-leader-2 {
    border: solid .125em #dbe2e8
}

.page-leaderboard .ranking .ranking-table-row-leader-2 .ranking-table-data-leader-2 .medal-silver {
    background: url(/assets/images/pages/leaderboard/medal-silver.svg) no-repeat;
    background-size: contain
}

.page-leaderboard .ranking .ranking-table-row-leader-3 {
    border: solid .125em #dfdfd1
}

.page-leaderboard .ranking .ranking-table-row-leader-3 .ranking-table-data-leader-3 .medal-bronze {
    background: url(/assets/images/pages/leaderboard/medal-bronze.svg) no-repeat;
    background-size: contain
}

.page-leaderboard .ranking .ranking-table-data {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
    color: #525c65;
    font-size: 1em
}

.page-leaderboard .ranking .ranking-table-data:first-child {
    text-align: center;
    width: 20%;
    color: #525c65;
    font-weight: 600
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-data:first-child {
        font-size:1.25em
    }
}

@media (min-width: 48em) {
    .page-leaderboard .ranking .ranking-table-data:first-child {
        width:15%
    }
}

.page-leaderboard .ranking .ranking-table-data:nth-child(2) {
    color: #2e3d49;
    width: 55%;
    font-size: .875em;
    padding-left: 9%
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-data:nth-child(2) {
        font-size:1em
    }
}

@media (min-width: 48em) {
    .page-leaderboard .ranking .ranking-table-data:nth-child(2) {
        font-size:1em;
        width: 55%
    }
}

@media (min-width: 70em) {
    .page-leaderboard .ranking .ranking-table-data:nth-child(2) {
        font-size:1em;
        padding-left: 4%
    }
}

.page-leaderboard .ranking .ranking-table-data:nth-child(3) {
    font-size: .875em;
    text-align: center;
    width: 25%;
    padding-right: 4%
}

@media (min-width: 33em) {
    .page-leaderboard .ranking .ranking-table-data:nth-child(3) {
        padding-right:0;
        font-size: 1em
    }
}

.page-leaderboard .ranking .terms {
    max-width: 92em;
    padding: 1.875em 0 3.875em 0;
    font-size: .75em;
    text-align: left;
    color: #7d97ad
}

.page-leaderboard .ranking .terms a {
    color: #02b3e4
}

.page-leaderboard .ranking .terms a:hover {
    color: #028bb1
}

@media (min-width: 70em) {
    .page-leaderboard .ranking .terms {
        padding:1.875em 0 3.875em 4em
    }
}

.failure {
    text-align: center;
    font-size: 1.375em;
    padding-bottom: 3em
}

.faq_teaser .contain,.outer_contain .contain,.requirements .contain {
    text-align: left
}

.nanodegree_graduates .outer_contain {
    background-color: #fafbfc;
    margin-top: 2.5em
}

.nanodegree_graduates .contain {
    padding: 3em 1.5em 5em
}

.nanodegree_graduates h2 {
    text-align: center;
    font-size: 1.65em;
    line-height: 1.3;
    font-weight: 300;
    margin-bottom: 35px;
    color: #2e3d49
}

.nanodegree_graduates h3 {
    text-align: center;
    font-size: 1.2em;
    font-weight: 300;
    margin: 35px auto 30px;
    color: #2e3d49
}

.nanodegree_graduates .callout_btn {
    margin: auto
}

.nanodegree_graduates .students {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    position: relative
}

.nanodegree_graduates .students:after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background: #dbe2e8;
    position: absolute;
    top: 50%;
    left: 0
}

.nanodegree_graduates .students .student {
    width: 50%;
    padding: .375em 2em;
    margin: 2.0625em 0 2em;
    border-right: 1px solid #dbe2e8
}

.nanodegree_graduates .students .student:nth-child(n+5) {
    display: none
}

.nanodegree_graduates .students .student:nth-child(2n) {
    border-right: none
}

.nanodegree_graduates .students .student__image {
    border-radius: 50%;
    width: 5em;
    display: block;
    margin: auto
}

.nanodegree_graduates .students .student__name {
    font-size: 1.125em;
    font-weight: 600;
    text-align: center;
    margin: 16px auto;
    color: #2e3d49
}

.nanodegree_graduates .students .student__affiliation {
    color: #7d97ad;
    font-size: .75em;
    text-transform: uppercase;
    text-align: center;
    width: 100%;
    display: block;
    margin-bottom: 8px;
    letter-spacing: 1px;
    font-weight: 600
}

.nanodegree_graduates .students .student__affiliation__image {
    display: block;
    margin: auto;
    max-width: 5em
}

@media (min-width: 47em) {
    .nanodegree_graduates h2 {
        font-size:1.8em;
        margin-bottom: 30px
    }

    .nanodegree_graduates h3 {
        font-size: 1.2em;
        margin: 30px auto 30px
    }

    .nanodegree_graduates .students .student {
        width: 33.3333%
    }

    .nanodegree_graduates .students .student:not(:nth-child(n+7)) {
        display: block
    }

    .nanodegree_graduates .students .student:nth-child(2n) {
        border-right: 1px solid #dbe2e8
    }

    .nanodegree_graduates .students .student:nth-child(3n) {
        border-right: none
    }
}

@media (min-width: 62em) {
    .nanodegree_graduates .contain {
        padding:4.375em 1.5em 7em
    }

    .nanodegree_graduates h2 {
        font-size: 2.125em;
        margin-bottom: 70px
    }

    .nanodegree_graduates h3 {
        font-size: 1.5em;
        margin: 70px auto 30px
    }

    .nanodegree_graduates .students .student {
        width: 25%;
        border-right: none
    }

    .nanodegree_graduates .students .student:nth-child(n+7) {
        display: block
    }

    .nanodegree_graduates .students .student:nth-child(3n),.nanodegree_graduates .students .student:nth-child(n) {
        border-right: 1px solid #dbe2e8
    }

    .nanodegree_graduates .students .student:nth-child(4n) {
        border-right: none
    }
}

.page-ndhub .nd013 .description {
    height: 4.125rem
}

@media screen and (min-width: 48em) {
    .page-ndhub .nd013 .description {
        height:4.875rem
    }
}

@media screen and (min-width: 48em) {
    .page-ndhub .nd013 .description {
        height:5.5rem
    }
}

@media screen and (min-width: 48em) and (min-width:48em) {
    .page-ndhub .nd013 .description {
        height:6.5rem
    }
}

.nd013 .guarantee,.nd013 .uconnect_callout {
    display: none
}

.drive {
    padding-top: 4.125rem;
    padding-bottom: 4.125rem
}

@media screen and (min-width: 48em) {
    .drive {
        padding-top:9.75rem;
        padding-bottom: 9.75rem
    }
}

.drive .contain {
    max-width: 48.75rem
}

body.stop-scrolling {
    height: 100%;
    overflow: hidden
}

.sweet-overlay {
    background-color: #000;
    background-color: rgba(0,0,0,.4);
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: none;
    z-index: 10000
}

.sweet-alert {
    background-color: #fff;
    font-family: 'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;
    width: 478px;
    padding: 17px;
    border-radius: 5px;
    text-align: center;
    position: fixed;
    left: 50%;
    top: 50%;
    margin-left: -256px;
    margin-top: -200px;
    overflow: hidden;
    display: none;
    z-index: 99999
}

@media all and (max-width: 540px) {
    .sweet-alert {
        width:auto;
        margin-left: 0;
        margin-right: 0;
        left: 15px;
        right: 15px
    }
}

.sweet-alert h2 {
    color: #575757;
    font-size: 30px;
    text-align: center;
    font-weight: 600;
    text-transform: none;
    position: relative;
    margin: 25px 0;
    padding: 0;
    line-height: 40px;
    display: block
}

.sweet-alert p {
    color: #797979;
    font-size: 16px;
    text-align: center;
    font-weight: 300;
    position: relative;
    text-align: inherit;
    float: none;
    margin: 0;
    padding: 0;
    line-height: normal
}

.sweet-alert fieldset {
    border: none;
    position: relative
}

.sweet-alert .sa-error-container {
    background-color: #f1f1f1;
    margin-left: -17px;
    margin-right: -17px;
    overflow: hidden;
    padding: 0 10px;
    max-height: 0;
    webkit-transition: padding .15s,max-height .15s;
    transition: padding .15s,max-height .15s
}

.sweet-alert .sa-error-container.show {
    padding: 10px 0;
    max-height: 100px;
    webkit-transition: padding .2s,max-height .2s;
    transition: padding .25s,max-height .25s
}

.sweet-alert .sa-error-container .icon {
    display: inline-block;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: #ea7d7d;
    color: #fff;
    line-height: 24px;
    text-align: center;
    margin-right: 3px
}

.sweet-alert .sa-error-container p {
    display: inline-block
}

.sweet-alert .sa-input-error {
    position: absolute;
    top: 29px;
    right: 26px;
    width: 20px;
    height: 20px;
    opacity: 0;
    transform: scale(.5);
    transform-origin: 50% 50%;
    transition: all .1s
}

.sweet-alert .sa-input-error::after,.sweet-alert .sa-input-error::before {
    content: "";
    width: 20px;
    height: 6px;
    background-color: #f06e57;
    border-radius: 3px;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    left: 50%;
    margin-left: -9px
}

.sweet-alert .sa-input-error::before {
    transform: rotate(-45deg)
}

.sweet-alert .sa-input-error::after {
    transform: rotate(45deg)
}

.sweet-alert .sa-input-error.show {
    opacity: 1;
    transform: scale(1)
}

.sweet-alert input {
    width: 100%;
    box-sizing: border-box;
    border-radius: 3px;
    border: 1px solid #d7d7d7;
    height: 43px;
    margin-top: 10px;
    margin-bottom: 17px;
    font-size: 18px;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.06);
    padding: 0 12px;
    display: none;
    transition: all .3s
}

.sweet-alert input:focus {
    outline: 0;
    box-shadow: 0 0 3px #c4e6f5;
    border: 1px solid #b4dbed
}

.sweet-alert input:focus::-moz-placeholder {
    transition: opacity .3s 30ms ease;
    opacity: .5
}

.sweet-alert input:focus:-ms-input-placeholder {
    transition: opacity .3s 30ms ease;
    opacity: .5
}

.sweet-alert input:focus::-webkit-input-placeholder {
    transition: opacity .3s 30ms ease;
    opacity: .5
}

.sweet-alert input::-moz-placeholder {
    color: #bdbdbd
}

.sweet-alert input:-ms-input-placeholder {
    color: #bdbdbd
}

.sweet-alert input::-webkit-input-placeholder {
    color: #bdbdbd
}

.sweet-alert.show-input input {
    display: block
}

.sweet-alert .sa-confirm-button-container {
    display: inline-block;
    position: relative
}

.sweet-alert .la-ball-fall {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -27px;
    margin-top: 4px;
    opacity: 0;
    visibility: hidden
}

.sweet-alert button {
    background-color: #8cd4f5;
    color: #fff;
    border: none;
    box-shadow: none;
    font-size: 17px;
    font-weight: 500;
    border-radius: 5px;
    padding: 10px 32px;
    margin: 26px 5px 0 5px;
    cursor: pointer
}

.sweet-alert button:focus {
    outline: 0;
    box-shadow: 0 0 2px rgba(128,179,235,.5),inset 0 0 0 1px rgba(0,0,0,.05)
}

.sweet-alert button:hover {
    background-color: #7ecff4
}

.sweet-alert button:active {
    background-color: #5dc2f1
}

.sweet-alert button.cancel {
    background-color: #c1c1c1
}

.sweet-alert button.cancel:hover {
    background-color: #b9b9b9
}

.sweet-alert button.cancel:active {
    background-color: #a8a8a8
}

.sweet-alert button.cancel:focus {
    box-shadow: rgba(197,205,211,.8) 0 0 2px,rgba(0,0,0,.0470588) 0 0 0 1px inset!important
}

.sweet-alert button[disabled] {
    opacity: .6;
    cursor: default
}

.sweet-alert button.confirm[disabled] {
    color: transparent
}

.sweet-alert button.confirm[disabled]~.la-ball-fall {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s
}

.sweet-alert button::-moz-focus-inner {
    border: 0
}

.sweet-alert[data-has-cancel-button=false] button {
    box-shadow: none!important
}

.sweet-alert[data-has-confirm-button=false][data-has-cancel-button=false] {
    padding-bottom: 40px
}

.sweet-alert .sa-icon {
    width: 80px;
    height: 80px;
    border: 4px solid gray;
    border-radius: 40px;
    border-radius: 50%;
    margin: 20px auto;
    padding: 0;
    position: relative;
    box-sizing: content-box
}

.sweet-alert .sa-icon.sa-error {
    border-color: #f27474
}

.sweet-alert .sa-icon.sa-error .sa-x-mark {
    position: relative;
    display: block
}

.sweet-alert .sa-icon.sa-error .sa-line {
    position: absolute;
    height: 5px;
    width: 47px;
    background-color: #f27474;
    display: block;
    top: 37px;
    border-radius: 2px
}

.sweet-alert .sa-icon.sa-error .sa-line.sa-left {
    transform: rotate(45deg);
    left: 17px
}

.sweet-alert .sa-icon.sa-error .sa-line.sa-right {
    transform: rotate(-45deg);
    right: 16px
}

.sweet-alert .sa-icon.sa-warning {
    border-color: #f8bb86
}

.sweet-alert .sa-icon.sa-warning .sa-body {
    position: absolute;
    width: 5px;
    height: 47px;
    left: 50%;
    top: 10px;
    border-radius: 2px;
    margin-left: -2px;
    background-color: #f8bb86
}

.sweet-alert .sa-icon.sa-warning .sa-dot {
    position: absolute;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    margin-left: -3px;
    left: 50%;
    bottom: 10px;
    background-color: #f8bb86
}

.sweet-alert .sa-icon.sa-info {
    border-color: #c9dae1
}

.sweet-alert .sa-icon.sa-info::before {
    content: "";
    position: absolute;
    width: 5px;
    height: 29px;
    left: 50%;
    bottom: 17px;
    border-radius: 2px;
    margin-left: -2px;
    background-color: #c9dae1
}

.sweet-alert .sa-icon.sa-info::after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    margin-left: -3px;
    top: 19px;
    background-color: #c9dae1
}

.sweet-alert .sa-icon.sa-success {
    border-color: #a5dc86
}

.sweet-alert .sa-icon.sa-success::after,.sweet-alert .sa-icon.sa-success::before {
    content: '';
    border-radius: 40px;
    border-radius: 50%;
    position: absolute;
    width: 60px;
    height: 120px;
    background: #fff;
    transform: rotate(45deg)
}

.sweet-alert .sa-icon.sa-success::before {
    border-radius: 120px 0 0 120px;
    top: -7px;
    left: -33px;
    transform: rotate(-45deg);
    transform-origin: 60px 60px
}

.sweet-alert .sa-icon.sa-success::after {
    border-radius: 0 120px 120px 0;
    top: -11px;
    left: 30px;
    transform: rotate(-45deg);
    transform-origin: 0 60px
}

.sweet-alert .sa-icon.sa-success .sa-placeholder {
    width: 80px;
    height: 80px;
    border: 4px solid rgba(165,220,134,.2);
    border-radius: 40px;
    border-radius: 50%;
    box-sizing: content-box;
    position: absolute;
    left: -4px;
    top: -4px;
    z-index: 2
}

.sweet-alert .sa-icon.sa-success .sa-fix {
    width: 5px;
    height: 90px;
    background-color: #fff;
    position: absolute;
    left: 28px;
    top: 8px;
    z-index: 1;
    transform: rotate(-45deg)
}

.sweet-alert .sa-icon.sa-success .sa-line {
    height: 5px;
    background-color: #a5dc86;
    display: block;
    border-radius: 2px;
    position: absolute;
    z-index: 2
}

.sweet-alert .sa-icon.sa-success .sa-line.sa-tip {
    width: 25px;
    left: 14px;
    top: 46px;
    transform: rotate(45deg)
}

.sweet-alert .sa-icon.sa-success .sa-line.sa-long {
    width: 47px;
    right: 8px;
    top: 38px;
    transform: rotate(-45deg)
}

.sweet-alert .sa-icon.sa-custom {
    background-size: contain;
    border-radius: 0;
    border: none;
    background-position: center center;
    background-repeat: no-repeat
}

@keyframes showSweetAlert {
    0% {
        transform: scale(.7);
        -webkit-transform: scale(.7)
    }

    45% {
        transform: scale(1.05);
        -webkit-transform: scale(1.05)
    }

    80% {
        transform: scale(.95);
        -webkit-transform: scale(.95)
    }

    100% {
        transform: scale(1);
        -webkit-transform: scale(1)
    }
}

@keyframes hideSweetAlert {
    0% {
        transform: scale(1);
        -webkit-transform: scale(1)
    }

    100% {
        transform: scale(.5);
        -webkit-transform: scale(.5)
    }
}

@keyframes slideFromTop {
    0% {
        top: 0
    }

    100% {
        top: 50%
    }
}

@keyframes slideToTop {
    0% {
        top: 50%
    }

    100% {
        top: 0
    }
}

@keyframes slideFromBottom {
    0% {
        top: 70%
    }

    100% {
        top: 50%
    }
}

@keyframes slideToBottom {
    0% {
        top: 50%
    }

    100% {
        top: 70%
    }
}

.showSweetAlert[data-animation=pop] {
    animation: showSweetAlert .3s
}

.showSweetAlert[data-animation=none] {
    animation: none
}

.showSweetAlert[data-animation=slide-from-top] {
    animation: slideFromTop .3s
}

.showSweetAlert[data-animation=slide-from-bottom] {
    animation: slideFromBottom .3s
}

.hideSweetAlert[data-animation=pop] {
    animation: hideSweetAlert .2s
}

.hideSweetAlert[data-animation=none] {
    animation: none
}

.hideSweetAlert[data-animation=slide-from-top] {
    animation: slideToTop .4s
}

.hideSweetAlert[data-animation=slide-from-bottom] {
    animation: slideToBottom .3s
}

@keyframes animateSuccessTip {
    0% {
        width: 0;
        left: 1px;
        top: 19px
    }

    54% {
        width: 0;
        left: 1px;
        top: 19px
    }

    70% {
        width: 50px;
        left: -8px;
        top: 37px
    }

    84% {
        width: 17px;
        left: 21px;
        top: 48px
    }

    100% {
        width: 25px;
        left: 14px;
        top: 45px
    }
}

@keyframes animateSuccessLong {
    0% {
        width: 0;
        right: 46px;
        top: 54px
    }

    65% {
        width: 0;
        right: 46px;
        top: 54px
    }

    84% {
        width: 55px;
        right: 0;
        top: 35px
    }

    100% {
        width: 47px;
        right: 8px;
        top: 38px
    }
}

@keyframes rotatePlaceholder {
    0% {
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg)
    }

    5% {
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg)
    }

    12% {
        transform: rotate(-405deg);
        -webkit-transform: rotate(-405deg)
    }

    100% {
        transform: rotate(-405deg);
        -webkit-transform: rotate(-405deg)
    }
}

.animateSuccessTip {
    animation: animateSuccessTip .75s
}

.animateSuccessLong {
    animation: animateSuccessLong .75s
}

.sa-icon.sa-success.animate::after {
    animation: rotatePlaceholder 4.25s ease-in
}

@keyframes animateErrorIcon {
    0% {
        transform: rotateX(100deg);
        -webkit-transform: rotateX(100deg);
        opacity: 0
    }

    100% {
        transform: rotateX(0);
        -webkit-transform: rotateX(0);
        opacity: 1
    }
}

.animateErrorIcon {
    animation: animateErrorIcon .5s
}

@keyframes animateXMark {
    0% {
        transform: scale(.4);
        -webkit-transform: scale(.4);
        margin-top: 26px;
        opacity: 0
    }

    50% {
        transform: scale(.4);
        -webkit-transform: scale(.4);
        margin-top: 26px;
        opacity: 0
    }

    80% {
        transform: scale(1.15);
        -webkit-transform: scale(1.15);
        margin-top: -6px
    }

    100% {
        transform: scale(1);
        -webkit-transform: scale(1);
        margin-top: 0;
        opacity: 1
    }
}

.animateXMark {
    animation: animateXMark .5s
}

@keyframes pulseWarning {
    0% {
        border-color: #f8d486
    }

    100% {
        border-color: #f8bb86
    }
}

.pulseWarning {
    animation: pulseWarning .75s infinite alternate
}

@keyframes pulseWarningIns {
    0% {
        background-color: #f8d486
    }

    100% {
        background-color: #f8bb86
    }
}

.pulseWarningIns {
    animation: pulseWarningIns .75s infinite alternate
}

@keyframes rotate-loading {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(360deg)
    }
}

.screenshot_block .outer_contain {
    position: relative;
    z-index: -1;
    margin-top: -10.9375em;
    background: #f4f4ef
}

.screenshot_block .outer_contain::after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 6.25em;
    background: #fff
}

.screenshot_block .contain {
    position: relative;
    padding: 15.625em 1.5em 0
}

.screenshot_block .profile_content {
    text-align: center;
    padding: 0;
    background: #fafbfc;
    border: 1px solid #dbe2e8;
    box-shadow: 0 .125em .25em 0 rgba(46,61,73,.12)
}

.screenshot_block .profile_content .img_contain {
    position: relative
}

.screenshot_block .profile_content .img_contain::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 35%;
    background: linear-gradient(to bottom,rgba(250,251,252,0) 0,#fafbfc 76%)
}

.screenshot_block .profile_content .content_contain {
    padding: 0 1.5em 5em
}

.screenshot_block .profile_content .content_contain h2 {
    font-size: 1.75em;
    font-weight: 300;
    margin-bottom: .5em;
    color: #2e3d49
}

.screenshot_block .profile_content .content_contain h4 {
    font-style: italic;
    font-weight: 400;
    font-size: 1em;
    color: #2e3d49;
    margin-bottom: 1.75em
}

.screenshot_block .profile_content .callout_btn {
    margin: 0 auto
}

@media (min-width: 40em) {
    .screenshot_block .profile_content .content_contain h2 {
        font-size:2.125em
    }

    .screenshot_block .profile_content .content_contain h4 {
        font-size: 1.25em
    }
}

.contact_block .outer_contain {
    background: #fafbfc
}

.contact_block .cards_contain {
    padding-bottom: 3.5em;
    margin-bottom: 1.5em
}

@media (min-width: 44em) {
    .contact_block .cards_contain {
        padding-bottom:7.5em
    }
}

.big_slider {
    position: relative;
    z-index: 1;
    margin-top: -1.375em;
    padding-bottom: 3em
}

.big_slider .slides {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.big_slider .flex-control-nav {
    position: absolute;
    z-index: 10;
    text-align: center;
    bottom: .5em;
    left: 50%;
    list-style-type: none;
    display: block;
    margin: 0;
    padding: 0;
    transform: translateX(-50%)
}

.big_slider .flex-control-nav li {
    cursor: pointer;
    display: inline-block;
    margin: 0 .25em
}

.big_slider .flex-control-nav li a {
    cursor: pointer;
    display: block;
    text-indent: -999em;
    width: .875em;
    height: .875em;
    border-radius: 50%;
    background: #dbe2e8;
    transition: background .3s ease
}

.big_slider .flex-control-nav li a.flex-active {
    background: #7d97ad
}

.big_slider .flex-direction-nav {
    display: none
}

.advisory_block,.why_udacity_block {
    clear: both
}

.advisory_block .contain,.why_udacity_block .contain {
    padding: 3.5em 1.5em;
    overflow: hidden
}

.advisory_block h2,.why_udacity_block h2 {
    font-weight: 300;
    font-size: 1.75em;
    color: #2e3d49
}

.advisory_block h4,.why_udacity_block h4 {
    clear: both;
    font-size: .8125em;
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: 1.75em;
    color: #7d97ad
}

.advisory_block .advisory_content,.advisory_block .why_content,.why_udacity_block .advisory_content,.why_udacity_block .why_content {
    margin-bottom: 3.5em
}

.advisory_block .advisory_content p,.advisory_block .why_content p,.why_udacity_block .advisory_content p,.why_udacity_block .why_content p {
    line-height: 1.75em;
    color: #525c65;
    margin-bottom: 2em
}

.advisory_block .advisory_board ul.advisory_list,.advisory_block .advisory_board ul.benefit_list,.advisory_block .why_benefits ul.advisory_list,.advisory_block .why_benefits ul.benefit_list,.why_udacity_block .advisory_board ul.advisory_list,.why_udacity_block .advisory_board ul.benefit_list,.why_udacity_block .why_benefits ul.advisory_list,.why_udacity_block .why_benefits ul.benefit_list {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden
}

.advisory_block .advisory_board ul.advisory_list li,.advisory_block .advisory_board ul.benefit_list li,.advisory_block .why_benefits ul.advisory_list li,.advisory_block .why_benefits ul.benefit_list li,.why_udacity_block .advisory_board ul.advisory_list li,.why_udacity_block .advisory_board ul.benefit_list li,.why_udacity_block .why_benefits ul.advisory_list li,.why_udacity_block .why_benefits ul.benefit_list li {
    margin-top: .625em;
    margin-bottom: .625em;
    font-size: .875em;
    text-decoration: none;
    background: #fff;
    border: 1px solid #dbe2e8;
    padding: 1.5em 1em;
    border-radius: .142857143em;
    box-shadow: 0 .1em .125em 0 rgba(46,61,73,.08)
}

.advisory_block .advisory_board ul.advisory_list li p,.advisory_block .advisory_board ul.benefit_list li p,.advisory_block .why_benefits ul.advisory_list li p,.advisory_block .why_benefits ul.benefit_list li p,.why_udacity_block .advisory_board ul.advisory_list li p,.why_udacity_block .advisory_board ul.benefit_list li p,.why_udacity_block .why_benefits ul.advisory_list li p,.why_udacity_block .why_benefits ul.benefit_list li p {
    color: #2e3d49;
    margin: 0
}

.advisory_block ul.advisory_list,.why_udacity_block ul.advisory_list {
    text-align: center
}

@media (min-width: 28em) {
    .advisory_block .advisory_board ul.advisory_list,.advisory_block .advisory_board ul.benefit_list,.advisory_block .why_benefits ul.advisory_list,.advisory_block .why_benefits ul.benefit_list,.why_udacity_block .advisory_board ul.advisory_list,.why_udacity_block .advisory_board ul.benefit_list,.why_udacity_block .why_benefits ul.advisory_list,.why_udacity_block .why_benefits ul.benefit_list {
        display:-ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .advisory_block .advisory_board ul.advisory_list li,.advisory_block .advisory_board ul.benefit_list li,.advisory_block .why_benefits ul.advisory_list li,.advisory_block .why_benefits ul.benefit_list li,.why_udacity_block .advisory_board ul.advisory_list li,.why_udacity_block .advisory_board ul.benefit_list li,.why_udacity_block .why_benefits ul.advisory_list li,.why_udacity_block .why_benefits ul.benefit_list li {
        width: 47.5%
    }
}

@media (min-width: 35em) {
    .advisory_block h2,.why_udacity_block h2 {
        font-size:2.125em
    }

    .advisory_block .advisory_content p,.advisory_block .why_content p,.why_udacity_block .advisory_content p,.why_udacity_block .why_content p {
        margin-bottom: 4em
    }
}

@media (min-width: 44em) {
    .advisory_block .contain,.why_udacity_block .contain {
        padding:7.5em 1.5em;
        overflow: hidden
    }
}

@media (min-width: 61em) {
    .advisory_block .advisory_content,.advisory_block .why_content,.why_udacity_block .advisory_content,.why_udacity_block .why_content {
        float:left;
        width: 52%;
        margin-bottom: 6.25em
    }

    .advisory_block .advisory_board,.advisory_block .why_benefits,.why_udacity_block .advisory_board,.why_udacity_block .why_benefits {
        float: right;
        width: 40%
    }
}

.videos_block .contain {
    padding: 0 1.5em
}

.videos_block .video_preview_contain {
    position: relative;
    overflow: hidden;
    margin: 0 auto 2em;
    max-width: 36.25em;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
}

.videos_block .video_preview_contain:last-child {
    margin-bottom: 0
}

.videos_block .video_preview_contain img {
    float: left
}

.videos_block .video_preview_contain .video_info {
    position: absolute;
    bottom: 0;
    left: 0
}

.videos_block .video_preview_contain .video_info h3 {
    color: #fff;
    font-size: 1.25em;
    font-weight: 600;
    margin: 0;
    padding: 0 1em 2.25em
}

.videos_block .video_preview_contain .video_info h3 .play_icon {
    display: block;
    position: relative;
    z-index: 1;
    width: 2.5em;
    height: 2.5em;
    margin-top: .5em
}

.videos_block .video_preview_contain .video_info h3 .play_icon::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    left: 40%;
    bottom: 15%;
    width: 55%;
    height: 0%;
    background: #02b3e4;
    transform: translateX(-50%) rotate(32deg);
    transition: height .5s ease-in-out
}

.videos_block .video_preview_contain:hover .video_info h3 .play_icon::before {
    height: 55%
}

@media (min-width: 30em) {
    .videos_block .video_preview_contain .video_info h3 {
        font-size:1.5em;
        padding: 0 1.5em 2.25em
    }
}

@media (min-width: 50em) {
    .videos_block .video_preview_contain {
        float:left;
        width: 47.5%;
        margin-right: 5%
    }

    .videos_block .video_preview_contain:last-child {
        margin-right: 0
    }
}

.open_positions {
    margin-bottom: 1.5em
}

.open_positions .outer_contain {
    background: #fafbfc
}

.open_positions .contain {
    overflow: hidden;
    padding: 3.5em 1.5em
}

.open_positions .heading {
    position: relative;
    margin-bottom: 2em
}

.open_positions .heading h2 {
    font-weight: 300;
    font-size: 1.75em;
    color: #2e3d49
}

.open_positions .job_categories ul {
    list-style-type: none;
    margin: 0 0 2em;
    padding: 0
}

.open_positions .job_categories ul li {
    display: block
}

.open_positions .job_categories ul li a {
    display: block;
    padding: 1em;
    font-size: .9375em;
    color: #7d97ad;
    text-decoration: none;
    transition: background .3s ease
}

.open_positions .job_categories ul li:hover a {
    background: rgba(219,226,232,.3)
}

.open_positions .job_categories ul li.selected a,.open_positions .job_categories ul li.selected:hover a {
    background: #dbe2e8
}

.open_positions .category_desc,.open_positions .job_listing li {
    position: relative;
    background: #fff;
    padding: 1.25em 1.5em;
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12);
    margin-bottom: 1.5em;
    text-align: center
}

.open_positions .category_desc h2,.open_positions .job_listing li h2 {
    font-size: 1.5em;
    color: #2e3d49
}

.open_positions .category_desc h2 span,.open_positions .job_listing li h2 span {
    display: block;
    font-size: .5em;
    text-transform: uppercase;
    letter-spacing: 1.25px;
    margin-top: .5em;
    color: #7d97ad
}

.open_positions .category_desc h3,.open_positions .job_listing li h3 {
    font-size: 1.375em;
    font-weight: 600;
    color: #757c81
}

.open_positions .category_desc h4,.open_positions .job_listing li h4 {
    font-size: 1em;
    font-weight: 400;
    margin-bottom: .5em;
    color: #7d97ad
}

.open_positions .category_desc p,.open_positions .job_listing li p {
    color: #757c81;
    margin: 0;
    margin: 0
}

.open_positions .category_desc .more_btn,.open_positions .job_listing li .more_btn {
    margin: 0 auto
}

.open_positions .job_listing {
    list-style-type: none;
    margin: 0;
    padding: 0
}

@media (min-width: 35em) {
    .open_positions .heading {
        padding-right:16em
    }

    .open_positions .heading h2 {
        font-size: 2.125em
    }

    .open_positions .heading form {
        position: absolute;
        top: 0;
        right: 0;
        width: 15em
    }

    .open_positions .category_desc,.open_positions .job_listing li {
        text-align: left;
        padding: 2.875em
    }

    .open_positions .category_desc h2 span,.open_positions .job_listing li h2 span {
        display: inline-block;
        float: right;
        padding-top: .65em
    }

    .open_positions .category_desc .more_btn,.open_positions .job_listing li .more_btn {
        margin: 0;
        max-width: 13.846153846em
    }
}

@media (min-width: 44em) {
    .open_positions .contain {
        padding:7.5em 1.5em
    }

    .open_positions .heading h2 {
        margin-bottom: 2em
    }

    .open_positions .job_categories {
        float: left;
        width: 30%;
        margin-right: 5%
    }

    .open_positions .job_listings_contain {
        float: left;
        width: 65%
    }
}

@media (min-width: 60em) {
    .open_positions .job_categories {
        width:25%;
        margin-right: 10%
    }

    .open_positions .job_listing li {
        padding-right: 15em
    }

    .open_positions .job_listing li h3 {
        margin-bottom: 0
    }

    .open_positions .job_listing li .more_btn {
        position: absolute;
        top: 50%;
        right: 3.538461538em;
        transform: translateY(-50%)
    }
}

.about_content_blocks .contain {
    max-width: 33.75em;
    padding: 3.5em 1.5em
}

.about_content_blocks .content_block {
    text-align: center;
    padding-bottom: 3.5em
}

.about_content_blocks .content_block h4 {
    font-size: .8125em;
    font-weight: 400;
    margin-bottom: 1.5em;
    color: #7d97ad;
    text-transform: uppercase
}

.about_content_blocks .content_block h2 {
    font-weight: 300;
    font-size: 1.75em;
    color: #2e3d49
}

.about_content_blocks .content_block .img_contain {
    padding-top: 2em
}

.about_content_blocks .content_block .img_contain img {
    box-shadow: 0 .3125em 1.25em 0 rgba(46,61,73,.12)
}

@media (min-width: 35em) {
    .about_content_blocks .content_block h2 {
        font-size:2.125em
    }

    .about_content_blocks .content_block img {
        width: 140%;
        max-width: 140%;
        margin-left: -20%
    }
}

@media (min-width: 44em) {
    .about_content_blocks .contain {
        padding:7.5em 1.5em
    }
}

@media (min-width: 63.75em) {
    .about_content_blocks .contain {
        max-width:75em
    }

    .about_content_blocks .content_block {
        position: relative;
        text-align: left
    }

    .about_content_blocks .content_block .img_contain {
        padding-top: 0
    }

    .about_content_blocks .content_block .img_contain img {
        width: 100%;
        max-width: 100%;
        margin-left: 0
    }

    .about_content_blocks .content_block.content_img_right {
        padding-right: 40em;
        padding-bottom: 12em
    }

    .about_content_blocks .content_block.content_img_right .img_contain {
        position: absolute;
        width: 45em;
        top: -3.125em;
        left: 100%;
        margin-left: -32.85em
    }

    .about_content_blocks .content_block.content_img_bottom {
        padding-left: 35em;
        padding-bottom: 26.25em
    }

    .about_content_blocks .content_block.content_img_bottom .heading {
        position: absolute;
        top: .5em;
        left: 15em;
        width: 20em
    }

    .about_content_blocks .content_block.content_img_bottom .img_contain {
        position: absolute;
        width: 55em;
        bottom: 0;
        left: -12.15em
    }

    .about_content_blocks .content_block.content_img_top {
        padding-left: 8.125em;
        padding-right: 20.625em;
        padding-top: 20.625em;
        padding-bottom: 0;
        margin-top: -10.9375em
    }

    .about_content_blocks .content_block.content_img_top .img_contain {
        position: absolute;
        width: 55em;
        top: 0;
        right: -12.15em
    }
}

.faq_heading .contain,.terms_policy_block .contain {
    padding: 3.5em 1.5em
}

.faq_heading h2,.terms_policy_block h2 {
    font-size: 2em;
    font-weight: 300;
    color: #2e3d49;
    margin-bottom: 1.25em
}

.faq_heading .terms_policy_nav,.terms_policy_block .terms_policy_nav {
    list-style-type: none;
    margin: 0;
    padding: 0 0 1em;
    border-bottom: 1px solid #dbe2e8
}

.faq_heading .terms_policy_nav li,.terms_policy_block .terms_policy_nav li {
    display: block
}

.faq_heading .terms_policy_nav li a,.terms_policy_block .terms_policy_nav li a {
    display: block;
    font-size: .9375em;
    text-decoration: none;
    padding: .5em 0;
    color: #757c81;
    transition: color .3s ease
}

.faq_heading .terms_policy_nav li a:hover,.terms_policy_block .terms_policy_nav li a:hover {
    color: #5d6266
}

.faq_heading .terms_policy_nav li.active a,.terms_policy_block .terms_policy_nav li.active a {
    color: #02b3e4
}

@media (min-width: 35em) {
    .faq_heading h2,.terms_policy_block h2 {
        font-size:2.5em
    }

    .faq_heading .terms_policy_nav,.terms_policy_block .terms_policy_nav {
        padding: 0
    }

    .faq_heading .terms_policy_nav li,.terms_policy_block .terms_policy_nav li {
        display: inline-block;
        margin-right: 2.5em
    }

    .faq_heading .terms_policy_nav li a,.terms_policy_block .terms_policy_nav li a {
        position: relative;
        padding: 0 0 3em
    }

    .faq_heading .terms_policy_nav li.active a,.terms_policy_block .terms_policy_nav li.active a {
        color: #5d6266
    }

    .faq_heading .terms_policy_nav li.active a::after,.terms_policy_block .terms_policy_nav li.active a::after {
        content: "";
        width: 100%;
        height: .333333333em;
        background: #02b3e4;
        position: absolute;
        bottom: 0;
        left: 0
    }
}

@media (min-width: 44em) {
    .faq_heading .contain,.terms_policy_block .contain {
        padding:7.5em 1.5em 5.5em
    }
}

.legal_content .contain {
    overflow: hidden;
    padding: 0 1.5em 3.5em
}

.legal_content .legal_links ul {
    list-style-type: none;
    margin: 0 0 2em;
    padding: 0
}

.legal_content .legal_links ul li {
    display: block
}

.legal_content .legal_links ul li a {
    display: block;
    padding: 1em;
    font-size: .9375em;
    color: #7d97ad;
    text-decoration: none;
    transition: background .3s ease
}

.legal_content .legal_links ul li:hover a {
    background: rgba(219,226,232,.3)
}

.legal_content .legal_links ul li.selected a,.legal_content .legal_links ul li.selected:hover a {
    background: #dbe2e8
}

.legal_content .legal_content_contain h3 {
    font-size: 1.125em;
    font-weight: 600;
    color: #2e3d49
}

.legal_content .legal_content_contain p {
    line-height: 1.875em
}

.legal_content .legal_content_contain p.caps {
    text-transform: uppercase
}

.legal_content .legal_content_contain ul {
    list-style-type: none;
    margin: 0 0 1.5em;
    padding: 0
}

.legal_content .legal_content_contain ul li {
    position: relative;
    padding-left: 1.25em;
    font-size: .875em;
    color: #2e3d49;
    padding-bottom: .75em;
    line-height: 1.875em
}

.legal_content .legal_content_contain ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .5em;
    width: .5em;
    height: .5em;
    border-radius: 50%;
    border: 1px solid #02b3e4
}

.legal_content .legal_section {
    padding: 1.5em 0
}

@media (min-width: 44em) {
    .legal_content .contain {
        padding:0 1.5em 7.5em
    }

    .legal_content .legal_links {
        float: left;
        width: 30%;
        margin-right: 5%
    }

    .legal_content .legal_content_contain {
        float: left;
        width: 65%
    }
}

@media (min-width: 60em) {
    .legal_content .legal_links {
        width:25%;
        margin-right: 10%
    }
}

.partner_hero .outer_contain {
    background: url(http://www.placehold.it/3080x1720) no-repeat center;
    background-size: cover
}

.partner_hero .contain {
    padding: 0 1.5em
}

.partner_hero .hero_content {
    text-align: center;
    max-width: 43.75em;
    margin: 0 auto;
    padding: 3.5em 0
}

.partner_hero .partner_logos {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.partner_hero .partner_logos li {
    position: relative;
    display: block;
    max-width: 9.5em;
    margin: 0 auto;
    padding: 2em 0
}

.partner_hero .partner_logos li:first-child {
    max-width: 12.5em
}

.partner_hero .partner_logos li:first-child::after {
    content: "";
    width: 50%;
    border-bottom: 1px solid #fff;
    position: absolute;
    bottom: 0;
    left: 25%
}

.partner_hero h1 {
    color: #fff;
    font-size: 2em;
    font-weight: 300;
    line-height: 1.25em;
    margin-bottom: 1em
}

.partner_hero p {
    color: #fff;
    font-size: .875em;
    line-height: 1.75em;
    margin-bottom: 0
}

@media (min-width: 35em) {
    .partner_hero h1 {
        font-size:2.5em
    }

    .partner_hero p {
        font-size: 1em
    }
}

@media (min-width: 44em) {
    .partner_hero .hero_content {
        padding:7.5em 0
    }

    .partner_hero .partner_logos {
        overflow: hidden;
        margin-bottom: 5em
    }

    .partner_hero .partner_logos li {
        float: left;
        width: 50%;
        height: 6.25em;
        max-width: 50%;
        padding: 0
    }

    .partner_hero .partner_logos li img {
        position: absolute;
        top: 50%;
        left: 3.75em;
        width: 9.5em;
        transform: translateY(-50%)
    }

    .partner_hero .partner_logos li:first-child {
        max-width: 50%;
        border-right: 1px solid #fff
    }

    .partner_hero .partner_logos li:first-child img {
        width: 12.5em;
        left: auto;
        right: 3.75em
    }

    .partner_hero .partner_logos li:first-child::after {
        display: none
    }
}

.success_features {
    overflow: hidden
}

.success_features .contain {
    padding: 3.5em 1.5em 0
}

.success_features .feature_block {
    display: block;
    position: relative;
    height: 24.6875em;
    margin-bottom: 1.5em;
    background: url(http://www.placehold.it/1400x790) no-repeat center;
    background-size: cover
}

.success_features .feature_block.last {
    margin-bottom: 0
}

.success_features .feature_block a {
    text-decoration: none;
    color: #fff
}

.success_features .feature_block .student_quote {
    position: absolute;
    top: 6.875em;
    left: 0;
    padding-left: 1em;
    padding-right: 1.5em
}

.success_features .feature_block .student_quote h2 {
    font-size: 1.75em;
    font-weight: 300
}

.success_features .feature_block .student_info {
    position: absolute;
    top: 15.5em;
    left: 0;
    padding-left: 1em
}

.success_features .feature_block .student_info h4 {
    font-size: .75em;
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: .75em
}

.success_features .feature_block .student_info h2 {
    font-weight: 600;
    font-size: 1.25em;
    margin-bottom: .5em
}

.success_features .feature_block .student_info h3 {
    font-weight: 300;
    font-size: 1em;
    margin-bottom: 0
}

.success_features .feature_block .student_info.video {
    padding-right: 5.5em
}

.success_features .feature_block .student_info.video .play_icon {
    position: absolute;
    right: 1.5em;
    top: 1.75em;
    z-index: 1;
    display: inline-block;
    width: 3em;
    height: 3em
}

.success_features .feature_block .student_info.video .play_icon::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    left: 40%;
    bottom: 20%;
    width: 55%;
    height: 0%;
    background: #02b3e4;
    transform: translateX(-50%) rotate(32deg);
    transition: height .5s ease-in-out
}

.success_features .feature_block:hover .student_info.video .play_icon::before {
    height: 55%
}

@media (min-width: 35em) {
    .success_features .feature_block .student_quote {
        padding-left:3em
    }

    .success_features .feature_block .student_quote h2 {
        font-size: 2.125em
    }

    .success_features .feature_block .student_info {
        top: 13.75em;
        padding-left: 3em
    }

    .success_features .feature_block .student_info h2 {
        font-size: 1.5em
    }

    .success_features .feature_block .student_info.video {
        padding-right: 7.5em
    }

    .success_features .feature_block .student_info.video .play_icon {
        top: 1em;
        width: 5em;
        height: 5em
    }
}

@media (min-width: 44em) {
    .success_features .contain {
        padding:7.5em 1.5em 0
    }

    .success_features .feature_block.small {
        width: 48.5%;
        float: left;
        margin-right: 3%
    }

    .success_features .feature_block.third {
        margin-right: 0
    }

    .success_features .feature_block.last {
        clear: both
    }
}

@media (min-width: 55em) {
    .success_features .feature_block {
        float:left;
        width: 59%;
        margin-right: 2%
    }

    .success_features .feature_block.small {
        width: 39%
    }

    .success_features .feature_block.last,.success_features .feature_block.second {
        clear: none;
        margin-right: 0
    }

    .success_features .feature_block.third {
        clear: both;
        margin-right: 2%
    }

    .success_features .feature_block.last,.success_features .feature_block.third {
        margin-bottom: 0
    }
}

.success_map_block .outer_contain {
    max-width: 110em;
    background-size: 140%
}

.success_map_block .contain {
    padding: 3.5em 1.5em
}

.success_map_block .stats {
    list-style-type: none;
    margin: 0 0 3.5em;
    padding: 0;
    text-align: center
}

.success_map_block .stats li {
    display: block;
    padding: 2em 2em 3em;
    width: 10em;
    margin: 0 auto;
    border-bottom: 1px solid #7d97ad
}

.success_map_block .stats li:last-child {
    border-bottom: none
}

.success_map_block .stats li h2 {
    font-size: 3.25em;
    font-weight: 300;
    color: #2e3d49;
    text-transform: uppercase;
    margin: 0
}

.success_map_block .stats li h2 span {
    font-size: 14px;
    font-weight: 600;
    display: block
}

.success_map_block .callout_btn {
    margin: 0 auto
}

@media (min-width: 35em) {
    .success_map_block .outer_contain {
        background-size:cover
    }

    .success_map_block .contain {
        padding: 8em 1.5em 3.5em
    }

    .success_map_block .stats {
        margin-bottom: 8em
    }

    .success_map_block .stats li {
        display: inline-block;
        border-bottom: none;
        border-right: 1px solid #7d97ad
    }

    .success_map_block .stats li:last-child {
        border-right: none
    }
}

@media (min-width: 50em) {
    .success_map_block .stats li {
        width:15em
    }

    .success_map_block .stats li h2 {
        font-size: 6.25em
    }
}

@media (min-width: 65em) {
    .success_map_block .contain {
        padding:13.75em 1.5em 7.5em
    }

    .success_map_block .stats {
        margin: 0 0 10.625em
    }
}

.mb-0 {
    margin-bottom: 0!important
}

.mb-half {
    margin-bottom: .6875rem
}

@media screen and (min-width: 48em) {
    .mb-half {
        margin-bottom:.8125rem
    }
}

.mb-1 {
    margin-bottom: 1.375rem!important
}

@media screen and (min-width: 48em) {
    .mb-1 {
        margin-bottom:1.625rem!important
    }
}

.mb-2 {
    margin-bottom: 2.75rem!important
}

@media screen and (min-width: 48em) {
    .mb-2 {
        margin-bottom:3.25rem!important
    }
}

.mb-3 {
    margin-bottom: 4.125rem!important
}

@media screen and (min-width: 48em) {
    .mb-3 {
        margin-bottom:4.875rem!important
    }
}

.mb-4 {
    margin-bottom: 5.5rem!important
}

@media screen and (min-width: 48em) {
    .mb-4 {
        margin-bottom:6.5rem!important
    }
}

.mb-5 {
    margin-bottom: 6.875rem!important
}

@media screen and (min-width: 48em) {
    .mb-5 {
        margin-bottom:8.125rem!important
    }
}

.mb-6 {
    margin-bottom: 8.25rem!important
}

@media screen and (min-width: 48em) {
    .mb-6 {
        margin-bottom:9.75rem!important
    }
}

.mb-7 {
    margin-bottom: 9.625rem!important
}

@media screen and (min-width: 48em) {
    .mb-7 {
        margin-bottom:11.375rem!important
    }
}

.mb-8 {
    margin-bottom: 11rem!important
}

@media screen and (min-width: 48em) {
    .mb-8 {
        margin-bottom:13rem!important
    }
}

.mb-9 {
    margin-bottom: 12.375rem!important
}

@media screen and (min-width: 48em) {
    .mb-9 {
        margin-bottom:14.625rem!important
    }
}

.mb-10 {
    margin-bottom: 13.75rem!important
}

@media screen and (min-width: 48em) {
    .mb-10 {
        margin-bottom:16.25rem!important
    }
}

.mb-11 {
    margin-bottom: 15.125rem!important
}

@media screen and (min-width: 48em) {
    .mb-11 {
        margin-bottom:17.875rem!important
    }
}

.mb-12 {
    margin-bottom: 16.5rem!important
}

@media screen and (min-width: 48em) {
    .mb-12 {
        margin-bottom:19.5rem!important
    }
}

.mb-13 {
    margin-bottom: 17.875rem!important
}

@media screen and (min-width: 48em) {
    .mb-13 {
        margin-bottom:21.125rem!important
    }
}

.mb-14 {
    margin-bottom: 19.25rem!important
}

@media screen and (min-width: 48em) {
    .mb-14 {
        margin-bottom:22.75rem!important
    }
}

.mb-15 {
    margin-bottom: 20.625rem!important
}

@media screen and (min-width: 48em) {
    .mb-15 {
        margin-bottom:24.375rem!important
    }
}

.mb-16 {
    margin-bottom: 22rem!important
}

@media screen and (min-width: 48em) {
    .mb-16 {
        margin-bottom:26rem!important
    }
}

.mb-17 {
    margin-bottom: 23.375rem!important
}

@media screen and (min-width: 48em) {
    .mb-17 {
        margin-bottom:27.625rem!important
    }
}

.mb-18 {
    margin-bottom: 24.75rem!important
}

@media screen and (min-width: 48em) {
    .mb-18 {
        margin-bottom:29.25rem!important
    }
}

.mb-19 {
    margin-bottom: 26.125rem!important
}

@media screen and (min-width: 48em) {
    .mb-19 {
        margin-bottom:30.875rem!important
    }
}

.mb-20 {
    margin-bottom: 27.5rem!important
}

@media screen and (min-width: 48em) {
    .mb-20 {
        margin-bottom:32.5rem!important
    }
}

.text-center {
    text-align: center
}

.bg-dark {
    background-color: #2e3d49!important
}

.white {
    color: #fff
}

.grey {
    color: #7d97ad
}

a.white:hover {
    color: #ccc
}

a.grey:hover {
    color: #4c6478
}

.popup {
    background-color: rgba(0,0,0,.6)
}

.popup>div {
    background-color: #fff
}

.displayNone {
    display: none!important
}

.transparent {
    background-color: transparent
}

.fullscreen {
    height: 100%;
    width: 100%;
    z-index: 10;
    position: fixed;
    top: 0;
    left: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

.foot .footer_nav .footer_nav_toggle>h3 {
    margin-top: 4px
}

body.modal-open {
    overflow: hidden
}

.nd-modal {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9999;
    display: none;
    overflow: hidden;
    outline: 0;
    background-color: rgba(0,0,0,.3)
}

.nd-modal.open {
    display: block
}

.nd-modal .modal-dialog {
    background-color: #fff;
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: auto;
    margin: 10px
}

@media screen and (min-width: 544px) {
    .nd-modal .modal-dialog {
        max-width:600px;
        margin: 30px auto
    }
}

.sweet-alert {
    width: 580px!important
}

.sweet-alert .reminder .close {
    position: absolute;
    top: -33px;
    right: -10px
}

.sweet-alert .reminder .close img {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: rgba(59,66,73,.5)
}

.sweet-alert .reminder .title {
    font-size: 21px
}

.sweet-alert .reminder .title h2 {
    color: #02b3e4;
    font-size: 30px
}

.sweet-alert .reminder .title span {
    display: inline-block;
    color: #02b3e4
}

.sweet-alert .reminder .content {
    font-size: 12px;
    width: 100%;
    display: block;
    margin: 0 auto;
    margin-left: 30px;
    text-align: left
}

.sweet-alert .reminder .content div {
    width: 30%;
    padding-left: 10px;
    padding-right: 10px;
    display: inline-block
}

.sweet-alert .reminder .content div img {
    width: 100px;
    height: 100px;
    margin: 0 auto;
    display: block
}

.sweet-alert .reminder .content div span {
    display: block
}

.sweet-alert .reminder .content .desc {
    font-size: 10px;
    color: rgba(59,66,73,.5)
}

.sweet-alert .reminder .actions {
    padding-top: 20px
}

.sweet-alert .reminder .actions a {
    display: inline-block;
    text-align: center;
    margin-right: 20px;
    margin-left: 20px;
    width: 138px;
    height: 43px;
    font-size: 13px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 2px;
    padding: 1em .25em;
    font-family: HanSans,"Open Sans",sans-serif;
    border-width: 0;
    border-radius: 4px;
    transition: all .3s ease
}

.btn-tertiary {
    background-color: #fff;
    border-color: #02b3e4;
    border-width: 1px!important;
    border-style: solid;
    color: #02b3e4
}

.btn-tertiary:focus,.btn-tertiary:hover,.open .dropdown-toggle.btn-tertiary {
    background-color: #fff;
    border-color: #02b3e4;
    color: #02b3e4
}

.btn-tertiary.active,.btn-tertiary:active {
    background-color: #fff;
    border-color: #02b3e4;
    color: #02b3e4
}

@media screen and (max-width: 800px) {
    .sweet-alert {
        width:62%!important;
        margin-left: -30%!important
    }

    .reminder .content {
        width: inherit!important
    }
}

@media screen and (max-width: 540px) {
    .sweet-alert {
        width:90%!important;
        margin-left: 1%!important;
        margin-right: 1%!important
    }
}

@media screen and (max-width: 400px) {
    .reminder .title {
        font-size:16px!important
    }

    .reminder .title h2 {
        font-size: 20px!important
    }

    .reminder .content {
        margin-left: 0!important
    }

    .reminder .content div span {
        display: none!important
    }

    .reminder .actions a {
        width: 100%!important;
        margin-left: 0!important
    }
}

#intercomLauncher {
    z-index: 2147483000;
    border-radius: 50%;
    position: fixed;
    bottom: 20px;
    left: 20px;
    width: 48px;
    height: 48px;
    cursor: pointer;
    background-position: 50%;
    background-color: #01b3e4;
    border: 1px solid #008bbc;
    background-size: 22px 22px;
    background-repeat: no-repeat;
    background-image: url(../images/icons/intercom-launcher.png);
    box-shadow: 0 6px 13px 0 rgba(0,0,0,.23)
}

@media (min-width: 52em) {
    #intercomLauncher {
        left:initial;
        right: 20px
    }
}

.contain.clear.header {
    padding: 1em 0
}

header .callout_btn {
    float: right;
    width: 10em;
    margin-left: .75rem;
    font-weight: 900;
    font-size: 12px;
    border: .125rem solid transparent;
    clear: none
}

header .callout_btn>* :visited {
    text-decoration: none
}

header .callout_btn.secondary {
    background-color: #607e97
}

header .callout_btn.secondary:hover {
    color: #e6e6e6;
    border-color: transparent;
    background-color: #607e97
}

@media screen and (max-width: 540px) {
    header .callout_btn {
        margin-bottom:8px
    }
}

.loading {
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.loading:before {
    background: rgba(255,255,255,.8);
    bottom: 0;
    content: '';
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 999
}

.loading:after {
    content: url(/assets/images/svgs/square_loading.svg);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 1000
}